Thank you all. To reproduce this problem may be helpful to our discussion. 
Fortunatly, It is very easy to do.
Please don't panic the steps, in fact, the steps is easy.

In muse 2.2.0 binary release samples\j2ee, got two copies of the wsn-producer, 
name these as wsn_produer_a and wsn_produer_b:

In wsn_produer_a, do following simple change:
    1. in config\muse.xml, change the http://ws.apache.org/muse/test/wsrf to 
http://ws.apache.org/muse/testa/wsrf, and change its prefix from 
       "test" to "testa"
    2. in wsdl\WsResource.wsdl, change the http://ws.apache.org/muse/test/wsrf 
to http://ws.apache.org/muse/testa/wsrf, and change its prefix from 
       "tns" to "tns_a"
    3. in wsdl\WsResource.rmd, change http://ws.apache.org/muse/test/wsrf to 
http://ws.apache.org/muse/testa/wsrf
    4. change the MyCapability.java accordingly.
  
In wsn_produer_a, also do following simple change:
    1. in config\muse.xml, change the http://ws.apache.org/muse/test/wsrf to 
http://ws.apache.org/muse/testb/wsrf, and change its prefix from 
       "test" to "testb"
    2. in wsdl\WsResource.wsdl, change the http://ws.apache.org/muse/test/wsrf 
to http://ws.apache.org/muse/testb/wsrf, and change its prefix from 
       "tns" to "tns_b"
    3. in wsdl\WsResource.rmd, change http://ws.apache.org/muse/test/wsrf to 
http://ws.apache.org/muse/testb/wsrf
    4. change the MyCapability.java accordingly.

In wsn_consumer, got two copies of the  WsnTestClient.java and name these as 
WsnTestClientA.java and WsnTestClientB.java.
  In WsnTestClientA.java, change "/wsn-producer/services" to 
"/wsn_producer_a/services";
In WsnTestClientB.java, change "/wsn-producer/services" to 
"/wsn_producer_b/services";

Then you can build and deploy war in ,say, tomcat:
  1. run "ant" in samples\j2ee\wsn_producer_a,samples\j2ee\wsn_producer_b, and 
samples\j2ee\wsn_consumer to build the war.
  2. deploy the generated wsn_producer_a.war and wsn_producer_b.war and 
wsn_consumer.war to JEERI (my envir.) or other container (say, tomcat, I also 
use it).
  4. please make sure the http port is 8080 in Server/container.
     samples\j2ee\wsn_consumer\"ant run 
-Dmain=org.apache.muse.test.wsn.WsnTestClientA" to subsscribe wsn_producer_a
     samples\j2ee\wsn_consumer\"ant run 
-Dmain=org.apache.muse.test.wsn.WsnTestClientB" to subsscribe wsn_producer_b
   then you will say the "destination unreachable" fault like this:

<soap:Text>[ID = 'DestinationUnreachable'] There is no resource available at 
the given EPR: 
      
      &lt;wsa:EndpointReference 
xmlns:wsa="http://www.w3.org/2005/08/addressing"&gt;
          
&lt;wsa:Address&gt;http://<localhost>:8080/wsn_producer_a/services/WsResouce&lt;/wsa:Address&gt;
      &lt;/wsa:EndpointReference&gt;
      
      The existing EPRs hosted by this endpoint are: 
      
      &lt;wsa:EndpointReference 
xmlns:wsa="http://www.w3.org/2005/08/addressing"&gt;
          &lt;wsa:ReferenceParameters 
xmlns:wsa="http://www.w3.org/2005/08/addressing"/&gt;
          
&lt;wsa:Address&gt;http://<localhost>:8080/wsn_producer_b/services/WsResource&lt;/wsa:Address&gt;
      &lt;/wsa:EndpointReference&gt;
</soap:Text>


Justin ZHANG (ZHANG Jinzhai, 张晋寨)
CMEP (Communication, Media, Entertainment, and Public sector) HP Global 
Delivery China Center (GDCC)
Tel: +86 21 3889 7219
Email: [EMAIL PROTECTED]
-----Original Message-----
From: Bogdan Solomon [mailto:[EMAIL PROTECTED]
Sent: 2007年7月25日 4:15
To: [email protected]
Subject: RE: One endpoint but two wsn producer EPRs


Most of my apps are deployed as wars inside ears (but I have one war inside an 
ear), and the issue is not with the naming of it. Application servers will 
deploy the wars separated in that each war has it's own web.xml that defines 
it's context root, which is the part that gets bound to the url.
Generally if the web.xml has no context root defined it uses the name of the 
war, and not that of the ear.

Also the endpoint that is being found as existing is the one with 
wsn-producer_b in it; so that part of the deployment is ok.

I am unsure as to how he routes to them though; since he does not use Axis.
All of my Muse apps have been Axis based.


Vinh Nguyen (vinguye2) wrote:
> 
> I think the problem is because the WAR files are inside an EAR.  So 
> when you deploy the EAR, the name of the main application is the EAR 
> name, not the WAR app's name.
> 
> Your producer is trying to reference this address:
> http://localhost:8080/wsn-producer_a/services/NotificationProducerA
>  
> But it can't find it because the EAR is in the way.  So the address 
> should probably look like:
> http://localhost:8080/EARApp/...
> 
> But, I'm not sure how you're supposed to reference the Muse app when 
> it's contained in an EAR?  The EAR must route the requests to the 
> contained WARs.
> 
> 

--
View this message in context: 
http://www.nabble.com/One-endpoint-but-two-wsn-producer-EPRs-tf4134220.html#a11770994
Sent from the Muse User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Justin ZHANG (ZHANG Jinzhai, 张晋寨)
CMEP (Communication, Media, Entertainment, and Public sector)
HP Global Delivery China Center (GDCC)
Tel: +86 21 3889 7219
Email: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to