[jboss-user] [JBossWS] - Cannot deploy webservice client when web service url unreach

tang_2001 do-not-reply at jboss.com
Thu Aug 3 05:52:06 EDT 2006


Hello,

I have a web service client deployed on my jboss-4.0.4GA server as a service reference as declared in my ejb-jar.xml file:

<service-ref>
  | 	<service-ref-name>service/BDPService</service-ref-name>
  | 	<service-interface>ch.ne.gubpm.ws.client.bdp.BDPService</service-interface>
  | 	<wsdl-file>META-INF/wsdl/BDPService.wsdl</wsdl-file>
  | 	<jaxrpc-mapping-file>
  | 		META-INF/bdp/jaxrpc-mapping.xml
  | 	</jaxrpc-mapping-file>
  | 	<port-component-ref>
  | 		<service-endpoint-interface>
  | 			ch.ne.gubpm.ws.client.bdp.WSBDPInterface
  | 		</service-endpoint-interface>
  | 	</port-component-ref>
  | </service-ref>

My client uses jbossws-1.0.1GA with jdk1.5.
I can successfully deploy and run this client when the webservice is responding. But if the webservice is down, I can no longer deploy the client and I get the following error at deployment:

11:03:22,243 WARN  [ServiceController] Problem starting service jboss.j2ee:jndiName=SessionFacade,service=EJB
  | org.jboss.deployment.DeploymentException: Cannot bind webservice to client environment; - nested throwable: (org.jboss.ws.WSException: Cannot unmarshall wsdl, cause: WSDLException (at /definitions/types/xsd:schema): faultCode=OTHER_ERROR: An error occurred trying to resolve schema referenced at 'http://wsstin010:8099/bdp?xsd=1', relative to 'jar:file:/G:/GUBPM/jboss-4.0.4.GA/server/default/tmp/deploy/tmp24781gubpm-server-ejb.jar!/META-INF/wsdl/BDPService.wsdl'.: Cannot access imported wsdl [http://wsstin010:8099/bdp?xsd=1], Connection refused: connect: java.lang.RuntimeException: Cannot access imported wsdl [http://wsstin010:8099/bdp?xsd=1], Connection refused: connect
  | 	at org.jboss.ws.metadata.wsdl.WSDL11DefinitionFactory$WSDLLocatorImpl.getImportInputSource(WSDL11DefinitionFactory.java:189)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(WSDLReaderImpl.java:740)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.parseSchema(WSDLReaderImpl.java:620)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.parseTypes(WSDLReaderImpl.java:583)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(WSDLReaderImpl.java:302)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2133)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2125)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2150)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2171)
  | 	at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(WSDLReaderImpl.java:2201)
  | 	at org.jboss.ws.metadata.wsdl.WSDL11DefinitionFactory.parse(WSDL11DefinitionFactory.java:86)
  | 	at org.jboss.ws.integration.jboss.WebServiceClientDeployer.getWsdlDefinition(WebServiceClientDeployer.java:129)
  | 	at org.jboss.ws.integration.jboss.WebServiceClientDeployer.setupServiceRefEnvironment(WebServiceClientDeployer.java:79)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
  | 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  | 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
  | 	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  | 	at $Proxy53.setupServiceRefEnvironment(Unknown Source)
  | 	at org.jboss.webservice.WebServiceClientHandler.setupServiceRefEnvironment(WebServiceClientHandler.java:94)
  | 	at org.jboss.ejb.Container.setupEnvironment(Container.java:1239)
  | 	at org.jboss.ejb.Container.startService(Container.java:824)
  | 	at org.jboss.ejb.SessionContainer.startService(SessionContainer.java:397)
  | 	at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
  | 	at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
  | 	at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
  | 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
  | ...
  | 

It seems that the url defined in the jboss-client.xml file (see below) is checked at deployment.

	<service-ref>
  | 		<service-ref-name>service/BDPService</service-ref-name>
  | 		<wsdl-override>http://wsstin010:8099/bdp?wsdl</wsdl-override>
  | 	</service-ref>

What can I do to avoid this checking since I have no garantee that the webservice is up at the moment I deploy my client? Is it a configuration problem or a bug?

Thanks

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

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



More information about the jboss-user mailing list