[jboss-user] [JBossWS] - Deploying EJB Endpoint Web Services on Jboss-4.0.5.GA
letincho5
do-not-reply at jboss.com
Thu Aug 30 08:20:24 EDT 2007
Hi,
I'm in a very similar situacion than:
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4060099#4060099
My web services runs on jboss 4.0.3_SP1 without problems. Unfortunatly on jboss 4.0.5.GA it doesn't work. I guess there is a deploy problem:
08:49:45,421 INFO [EARDeployer] Init J2EE application: file:/C:/Proyectos/Gauss/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/deploy/WsVmonEAR.ear/
08:49:46,015 INFO [EjbModule] Deploying VideoServerEJB
08:49:46,625 WARN [PortComponentMetaData] <wsdl-port> element in webservices.xml not namespace qualified: VideoServerServicePort
08:49:47,281 ERROR [MainDeployer] Could not create deployment: file:/C:/Proyectos/Gauss/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/deploy/WsVmonEAR.ear/WsVmon.jar/
java.lang.NoSuchMethodError: com.ibm.wsdl.xml.WSDLReaderImpl.setEntityResolver(Lorg/xml/sax/EntityResolver;)V
at org.jboss.ws.metadata.wsdl.WSDLDefinitionsFactory.parse(WSDLDefinitionsFactory.java:142)
at org.jboss.ws.metadata.ServiceMetaData.getWsdlDefinitions(ServiceMetaData.java:273)
at org.jboss.ws.deployment.JSR109ServerMetaDataBuilder.buildMetaData(JSR109ServerMetaDataBuilder.java:94)
at org.jboss.ws.deployment.ServiceEndpointDeployer.create(ServiceEndpointDeployer.java:85)
The wsdl and mapping files were generated by the SUN's JWSDP (http://java.sun.com/webservices/downloads/previous/index.jsp)
This is the service endpoint
| package com.gauss.vmon.ws.endpoint;
|
| import java.rmi.Remote;
| import java.rmi.RemoteException;
|
| import com.gauss.vmon.ws.data.CameraData;
| import com.gauss.vmon.ws.data.Credential;
|
| public interface VideoServerService extends Remote {
|
|
| /**
| * @param vsfId
| * @return
| */
| public CameraData getCameraData(String vsfId) throws RemoteException;
|
| /**
| * @param vsfId
| * @return
| */
| public Credential getCredential(String vsfId) throws RemoteException;;
|
| }
The JWSDP's config.xml file
| <?xml version="1.0" encoding="UTF-8"?>
| <configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
| <service name="VideoServerService"
| targetNamespace="http://ws.vmon.gauss.com"
| typeNamespace="http://ws.vmon.gauss.com/types"
| packageName="com.gauss.vmon.ws">
| <interface name="com.gauss.vmon.ws.endpoint.VideoServerService"/>
| </service>
| </configuration>
My webservices.xml:
| <webservices xmlns="http://java.sun.com/xml/ns/j2ee"
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd"
| version="1.1">
| <webservice-description>
| <webservice-description-name>
| VideoServerService
| </webservice-description-name>
| <wsdl-file>META-INF/wsdl/VideoServerService.wsdl</wsdl-file>
| <jaxrpc-mapping-file>META-INF/mapping.xml</jaxrpc-mapping-file>
| <port-component>
| <port-component-name>VideoServerService</port-component-name>
| <wsdl-port>VideoServerServicePort</wsdl-port>
| <service-endpoint-interface>
| com.gauss.vmon.ws.endpoint.VideoServerService
| </service-endpoint-interface>
| <service-impl-bean>
| <ejb-link>VideoServerEJB</ejb-link>
| </service-impl-bean>
| </port-component>
| </webservice-description>
| </webservices>
|
And the wsdl and mapping files:
wsdl
| <?xml version="1.0" encoding="UTF-8"?>
|
| <definitions name="VideoServerService" targetNamespace="http://ws.vmon.gauss.com" xmlns:tns="http://ws.vmon.gauss.com" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns2="http://ws.vmon.gauss.com/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
| <types>
| <schema targetNamespace="http://ws.vmon.gauss.com/types" xmlns:tns="http://ws.vmon.gauss.com/types" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://www.w3.org/2001/XMLSchema">
| <complexType name="CameraData">
| <sequence>
| <element name="apiCode" type="string" nillable="true"/>
| <element name="channel" type="int"/>
| <element name="ip" type="string" nillable="true"/>
| <element name="password" type="string" nillable="true"/>
| <element name="port" type="int"/>
| <element name="status" type="int"/>
| <element name="statusDescription" type="string" nillable="true"/>
| <element name="username" type="string" nillable="true"/>
| <element name="vsfId" type="string" nillable="true"/></sequence></complexType>
| <complexType name="Credential">
| <sequence>
| <element name="password" type="string" nillable="true"/>
| <element name="status" type="int"/>
| <element name="statusDescription" type="string" nillable="true"/>
| <element name="username" type="string" nillable="true"/></sequence></complexType></schema></types>
| <message name="VideoServerService_getCameraData">
| <part name="vsfId" type="xsd:string"/></message>
| <message name="VideoServerService_getCameraDataResponse">
| <part name="result" type="ns2:CameraData"/></message>
| <message name="VideoServerService_getCredential">
| <part name="vsfId" type="xsd:string"/></message>
| <message name="VideoServerService_getCredentialResponse">
| <part name="result" type="ns2:Credential"/></message>
| <portType name="VideoServerService">
| <operation name="getCameraData" parameterOrder="vsfId">
| <input message="tns:VideoServerService_getCameraData"/>
| <output message="tns:VideoServerService_getCameraDataResponse"/></operation>
| <operation name="getCredential" parameterOrder="vsfId">
| <input message="tns:VideoServerService_getCredential"/>
| <output message="tns:VideoServerService_getCredentialResponse"/></operation></portType>
| <binding name="VideoServerServiceBinding" type="tns:VideoServerService">
| <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
| <operation name="getCameraData">
| <soap:operation soapAction=""/>
| <input>
| <soap:body use="literal" namespace="http://ws.vmon.gauss.com"/></input>
| <output>
| <soap:body use="literal" namespace="http://ws.vmon.gauss.com"/></output></operation>
| <operation name="getCredential">
| <soap:operation soapAction=""/>
| <input>
| <soap:body use="literal" namespace="http://ws.vmon.gauss.com"/></input>
| <output>
| <soap:body use="literal" namespace="http://ws.vmon.gauss.com"/></output></operation></binding>
| <service name="VideoServerService">
| <port name="VideoServerServicePort" binding="tns:VideoServerServiceBinding">
| <soap:address location="REPLACE_WITH_ACTUAL_URL"/></port></service></definitions>
|
mapping.xml
| <?xml version="1.0" encoding="UTF-8"?>
| <java-wsdl-mapping xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd">
| <package-mapping>
| <package-type>com.gauss.vmon.ws</package-type>
| <namespaceURI>http://ws.vmon.gauss.com/types</namespaceURI>
| </package-mapping>
| <package-mapping>
| <package-type>com.gauss.vmon.ws</package-type>
| <namespaceURI>http://ws.vmon.gauss.com</namespaceURI>
| </package-mapping>
| <java-xml-type-mapping>
| <java-type>com.gauss.vmon.ws.data.CameraData</java-type>
| <root-type-qname xmlns:typeNS="http://ws.vmon.gauss.com/types">typeNS:CameraData</root-type-qname>
| <qname-scope>complexType</qname-scope>
| <variable-mapping>
| <java-variable-name>apiCode</java-variable-name>
| <xml-element-name>apiCode</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>channel</java-variable-name>
| <xml-element-name>channel</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>ip</java-variable-name>
| <xml-element-name>ip</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>password</java-variable-name>
| <xml-element-name>password</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>port</java-variable-name>
| <xml-element-name>port</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>status</java-variable-name>
| <xml-element-name>status</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>statusDescription</java-variable-name>
| <xml-element-name>statusDescription</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>username</java-variable-name>
| <xml-element-name>username</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>vsfId</java-variable-name>
| <xml-element-name>vsfId</xml-element-name>
| </variable-mapping>
| </java-xml-type-mapping>
| <java-xml-type-mapping>
| <java-type>com.gauss.vmon.ws.data.Credential</java-type>
| <root-type-qname xmlns:typeNS="http://ws.vmon.gauss.com/types">typeNS:Credential</root-type-qname>
| <qname-scope>complexType</qname-scope>
| <variable-mapping>
| <java-variable-name>password</java-variable-name>
| <xml-element-name>password</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>status</java-variable-name>
| <xml-element-name>status</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>statusDescription</java-variable-name>
| <xml-element-name>statusDescription</xml-element-name>
| </variable-mapping>
| <variable-mapping>
| <java-variable-name>username</java-variable-name>
| <xml-element-name>username</xml-element-name>
| </variable-mapping>
| </java-xml-type-mapping>
| <service-interface-mapping>
| <service-interface>com.gauss.vmon.ws.VideoServerService</service-interface>
| <wsdl-service-name xmlns:serviceNS="http://ws.vmon.gauss.com">serviceNS:VideoServerService</wsdl-service-name>
| <port-mapping>
| <port-name>VideoServerServicePort</port-name>
| <java-port-name>VideoServerServicePort</java-port-name>
| </port-mapping>
| </service-interface-mapping>
| <service-endpoint-interface-mapping>
| <service-endpoint-interface>com.gauss.vmon.ws.endpoint.VideoServerService</service-endpoint-interface>
| <wsdl-port-type xmlns:portTypeNS="http://ws.vmon.gauss.com">portTypeNS:VideoServerService</wsdl-port-type>
| <wsdl-binding xmlns:bindingNS="http://ws.vmon.gauss.com">bindingNS:VideoServerServiceBinding</wsdl-binding>
| <service-endpoint-method-mapping>
| <java-method-name>getCameraData</java-method-name>
| <wsdl-operation>getCameraData</wsdl-operation>
| <method-param-parts-mapping>
| <param-position>0</param-position>
| <param-type>java.lang.String</param-type>
| <wsdl-message-mapping>
| <wsdl-message xmlns:wsdlMsgNS="http://ws.vmon.gauss.com">wsdlMsgNS:VideoServerService_getCameraData</wsdl-message>
| <wsdl-message-part-name>vsfId</wsdl-message-part-name>
| <parameter-mode>IN</parameter-mode>
| </wsdl-message-mapping>
| </method-param-parts-mapping>
| <wsdl-return-value-mapping>
| <method-return-value>com.gauss.vmon.ws.data.CameraData</method-return-value>
| <wsdl-message xmlns:wsdlMsgNS="http://ws.vmon.gauss.com">wsdlMsgNS:VideoServerService_getCameraDataResponse</wsdl-message>
| <wsdl-message-part-name>result</wsdl-message-part-name>
| </wsdl-return-value-mapping>
| </service-endpoint-method-mapping>
| <service-endpoint-method-mapping>
| <java-method-name>getCredential</java-method-name>
| <wsdl-operation>getCredential</wsdl-operation>
| <method-param-parts-mapping>
| <param-position>0</param-position>
| <param-type>java.lang.String</param-type>
| <wsdl-message-mapping>
| <wsdl-message xmlns:wsdlMsgNS="http://ws.vmon.gauss.com">wsdlMsgNS:VideoServerService_getCredential</wsdl-message>
| <wsdl-message-part-name>vsfId</wsdl-message-part-name>
| <parameter-mode>IN</parameter-mode>
| </wsdl-message-mapping>
| </method-param-parts-mapping>
| <wsdl-return-value-mapping>
| <method-return-value>com.gauss.vmon.ws.data.Credential</method-return-value>
| <wsdl-message xmlns:wsdlMsgNS="http://ws.vmon.gauss.com">wsdlMsgNS:VideoServerService_getCredentialResponse</wsdl-message>
| <wsdl-message-part-name>result</wsdl-message-part-name>
| </wsdl-return-value-mapping>
| </service-endpoint-method-mapping>
| </service-endpoint-interface-mapping>
| </java-wsdl-mapping>
|
Thanks for your help
Martín
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4079585#4079585
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4079585
More information about the jboss-user
mailing list