-
1. Re: deducing host and port in new HTTP Gateway
kconner Sep 11, 2009 4:04 AM (in response to dward)The first question I have to ask is why do we need to register the EPR in the registry? It is not an ESB endpoint and shouldn't really be there.
The issue appears to be tied to the https://jira.jboss.org/jira/browse/JBESB-2822 so I assume it comes from that work.
Kev -
2. Re: deducing host and port in new HTTP Gateway
tfennelly Sep 11, 2009 4:24 AM (in response to dward)"dward" wrote:
.... I'm scratching my head about is how to deduce the host and port.
Dave, I was thinking about this after we talked last night and it dawned on me... JBossWS works this out somehow... maybe if you dig around the code there you'll be able to see. -
3. Re: deducing host and port in new HTTP Gateway
kconner Sep 11, 2009 4:27 AM (in response to dward)The JBossWS integration does not work in this way, it queries JBossWS when the request is made from the jsp.
Kev -
4. Re: deducing host and port in new HTTP Gateway
tfennelly Sep 11, 2009 5:03 AM (in response to dward)Ah yes... I do recall that now. Thanks Kev.
How about the EPR is just registered as "http://localhost:8080/...." and then something (e.g. the contract jsp, or other) checks each of the endpoint URIs as it is generating the contract page, "fixing" http endpoint URIs that have a host of "localhost" and a port of "8080" (use constants of course) with the fixed host and port coming from the incoming request?
I know this is hacky, but maybe it'll seed a better idea for somone else :) -
5. Re: deducing host and port in new HTTP Gateway
kconner Sep 11, 2009 5:32 AM (in response to dward)Sure, but why register an EPR in the registry in the first place?
The idea of pushing this through the registry is fragile once it is extended to multiple servers. It may also be that it does not work correctly as the service publishers exposed through the console are co-located, irrespective of the location of the gateway.
EBWS does not publish contracts by relying on the registry, it may be better for us to look at something similar for this.
Kev -
6. Re: deducing host and port in new HTTP Gateway
tfennelly Sep 11, 2009 5:47 AM (in response to dward)"Kevin.Conner@jboss.com" wrote:
it may be better for us to look at something similar for this.
Sounds good... +1 -
7. Re: deducing host and port in new HTTP Gateway
dward Sep 11, 2009 11:55 AM (in response to dward)"Kevin.Conner@jboss.com" wrote:
The first question I have to ask is why do we need to register the EPR in the registry? It is not an ESB endpoint and shouldn't really be there.
But, it is an ESB endpoint:
* Endpoint: http://localhost:8080/Quickstart_webservice_proxy_basic/http/Proxy_Basic/Proxy
* Contract: http://localhost:8080/contract/contract.jsp?serviceCat=Proxy_Basic&serviceName=Proxy&protocol=http
(the above is the contract app after I put in my change, locally). -
8. Re: deducing host and port in new HTTP Gateway
kconner Sep 11, 2009 12:09 PM (in response to dward)"dward" wrote:
But, it is an ESB endpoint:
It's a gateway and not an ESB endpoint. We should not be registering these into the registry.
Kev -
9. Re: deducing host and port in new HTTP Gateway
dward Sep 11, 2009 3:36 PM (in response to dward)An EPR has an address. A URL/URI is an address. A URL maps to an instance of the HttpGatewayServlet. In my opinion, the servlet is the gateway, but the URL is the endpoint. I am not saying that the servlet/gateway should have an EPR registered, but I am saying that the endpoint URL/address should be.
Also, why would we treat this differently than the JBossRemotingGatewayListener? When it is configured for http, we register an endpoint for the URL it listens on. Why wouldn't we be consistent and also register an endpoint for the URL an instance of the HttpGatewayServlet listens on?
Sorry. I'm not trying to belabor my point. I'm trying to understand if we're just hitting a semantical challenge here, or if there is a fundamental flaw in the paragraphs above. -
10. Re: deducing host and port in new HTTP Gateway
kconner Sep 14, 2009 4:51 AM (in response to dward)The fact that JBR did it wrong in the first place does not mean that we should continue to do this, nor does it mean we are forced to. EBWS already uses a simpler (and cleaner) mechanism and we should be implementing something similar for the proxy work.
The registry was only ever intended to contain EPRs for ESB specific services and that is how it should have remained. We now have code within SI which explicitly ignores EPRs that it 'guesses' may be external, rather than knowing for certain.
Lets step back and work out what we need this to do and go from there.
Kev -
11. Re: deducing host and port in new HTTP Gateway
mageshbk Apr 24, 2012 7:55 AM (in response to kconner)Sorry to re-open such an old thread. The fact that the HTTP Gateway does not register an EPR, makes it difficult to see the generated contract listed in the contract page. User is requesting that such listener be also listed in the contract page to identify the modified WSDL that it may expose (for eg., when using SOAPProcessor). Please see this JIRA for more information:
https://issues.jboss.org/browse/JBESB-3789
JBR registered an EPR and hence got listed in the contract page. How should we go about listing HTTP gateway contracts? Are the user's supposed to use the WSDL from the target Webservice and set the endpoint address to this HTTP gateway?
-
12. Re: deducing host and port in new HTTP Gateway
mageshbk Apr 24, 2012 8:47 AM (in response to mageshbk)Okay figured out that JBossWSWebserviceContractPublisher needs to use org.jboss.internal.soa.esb.publish.ContractProvider interface to get listed in the contract page. Thanks to Tadayoshi Sato for his analysis on the JIRA!
-
13. Re: deducing host and port in new HTTP Gateway
mageshbk Apr 25, 2012 4:05 AM (in response to kconner)One small note though is that all gateways jms, jbr etc., get listed as EPRs, maybe we need to eleminate these and use some standard way to get them listed in the contract page.