Hello
I have a WSDL File which looks like
Snippet from WSDL:

  | <service name="RajaTest">
  |       <port name="TestBeanEndPointPort" 
binding="tns:TestBeanEndPointBinding">
  |                 <soap:address location="REPLACE_WITH_ACTUAL_URL"/>
  |       </port>
  |      <port name="CEEBeanEndPointPort" binding="tns:CEEBeanEndPointBinding">
  |                 <soap:address location="REPLACE_WITH_ACTUAL_URL"/>
  |      </port>
  | </service>
  | 
This has been generated using  the JWSDP wscompile tool for 2 ports in a single 
service. So this has 2 ports defined with my single service. It deploys fine 
but when i invoke my client like

  |        QName testQName = new QName("http://xxx.net";, "RajaTest");
  |         QName ceeQName = new QName("http://xxx.net";, "RajaTest");
  |         ServiceFactory fact = ServiceFactory.newInstance();
  |         testService = fact.createService(testURL, testQName);
  |         ceeService = fact.createService(ceeURL, testQName);
  | 
the client code bombs out with a
java.lang.IllegalArgumentException: Multiple bindings for not supported for 
service: {http://xxx.net}RajaTest
javax.xml.rpc.ServiceException: java.lang.IllegalArgumentException: Multiple 
bindings for not supported for service: {http://collab.net}RajaTest
        at 
org.jboss.webservice.client.ServiceFactoryImpl.createService(ServiceFactoryImpl.java:125)
        at com.clientapp.TestClient.setUp(TestClient.java:29)

Tracing back to the source, 

  |          Iterator it = wsdlService.getPorts().values().iterator();
  |          while (it.hasNext())
  |          {
  |             Port port = (Port)it.next();
  |             Binding binding = port.getBinding();
  | 
  |             if (wsdlBinding != null && 
wsdlBinding.getQName().equals(binding.getQName()) == false)
  |                throw new IllegalArgumentException("Multiple bindings for 
not supported for service: " + wsdlService.getQName());
  | 
  |             if (wsdlBinding == null)
  |                wsdlBinding = binding;
  |          }
  |       }
  | 
It looks like this code will bomb for every service that can have multiple 
ports. If i have 2 ports that differ only in the type of transport, then both 
of them have the same QName and it looks like the code will error for such a 
case. In my case, i have a default namespace of http://xxx.com and i have the 
same namespace applied for both the ports. 

Is this a bug? Why should the ports within a service be restricted?



View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3863045#3863045

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3863045


-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
JBoss-user mailing list
JBoss-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to