You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by Kaeto23 <ka...@yahoo.de> on 2006/12/14 14:55:35 UTC

Re: [Bulk] JAX-RPC Webservice deploys with NPE

-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160

Hello,

sorry, I totally forgot to post the stacktrace. Here it is:

org.apache.geronimo.common.DeploymentException:
java.lang.NullPointerException
	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:383)
	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
	at
org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
	at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
	at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
	at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
	at
org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
	at
org.apache.geronimo.deployment.plugin.local.AbstractDeployCommand.doDeploy(AbstractDeployCommand.java:106)
	at
org.apache.geronimo.deployment.plugin.local.DistributeCommand.run(DistributeCommand.java:60)
	at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
	at
org.apache.geronimo.axis.builder.AxisServiceBuilder.createServiceDesc(AxisServiceBuilder.java:83)
	at
org.apache.geronimo.axis.builder.AxisServiceBuilder.createServiceInfo(AxisServiceBuilder.java:73)
	at
org.apache.geronimo.axis.builder.AxisBuilder.configureEJB(AxisBuilder.java:141)
	at
org.apache.geronimo.axis.builder.AxisBuilder$$FastClassByCGLIB$$16a52a9a.invoke(<generated>)
	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
	at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
	at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
	at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
	at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
	at
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
	at
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
	at
org.apache.geronimo.j2ee.deployment.ServiceReferenceBuilder$$EnhancerByCGLIB$$8018ba1f.configureEJB(<generated>)
	at
org.openejb.deployment.SessionBuilder.addWSContainerGBean(SessionBuilder.java:215)
	at
org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:197)
	at
org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514)
	at
org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>)
	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
	at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
	at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
	at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
	at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
	at
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
	at
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
	at
org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$fe5ad2d4.addGBeans(<generated>)
	at
org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562)
	at
org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>)
	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
	at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
	at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
	at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
	at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
	at
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
	at
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
	at
org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$a47db46.buildConfiguration(<generated>)
	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
	... 10 more



Best regards

Dirk

D. Strauss schrieb:
> Hello,
> 
> I read the Geronimo Wiki about the Sample JAX RPC webservice. Good
> tutorial :P
> 
> However, I fail in developing my own version of it (and YES I don't want
> to install seven hundred tools to get it working as suggested already on
> the ML :P )
> 
> Basically, the error is a NullPointerException on deploy time. I think
> that the error may be in the jaxrpc-mapping.xml but I'm not quite sure
> since this is my first (or second?) try to create a webservice with
> jaxrpc. I'm used to create EJB webservices but thx to a specific bug in
> Geronimo I can't use them anymore :/
> 
> So, I'll attach my jaxrpc-mapping.xml and several other files so that
> you may get an overview of all related files. Maybe Lasantha will find
> the answer ;)
> 
> Best regards
> 
> Dirk
> 
> 
> ------------------------------------------------------------------------
> 
> <?xml version="1.0" encoding="UTF-8" standalone="no"?><definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mns="http://www.ds2/firefox/ws/methoden/" xmlns:mns0="http://www.ds2/firefox/ws/methoden/P1/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.ds2/firefox/ws/" xmlns:u0="http://www.ds2/firefox/ws/xml/" xmlns:xd5="http://www.ds2/xd5/SchemaDatentyp/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://www.ds2/firefox/ws/" xmlns="http://schemas.xmlsoap.org/wsdl/"><!--Created by XD5--><types><xsd:schema elementFormDefault="qualified" targetNamespace="http://www.ds2/firefox/ws/xml/"><xsd:element name="ProxyInfo" type="u0:ProxyInfoType"/><xsd:complexType name="ProxyInfoType"><xsd:annotation><xsd:documentation>Ein Info-Element mit Proxydaten</xsd:documentation></xsd:annotation><xsd:all><xsd:element name="serv
er
>  Zeit" type="xsd:dateTime"><xsd:annotation><xsd:documentation>Die Serverzeit</xsd:documentation></xsd:annotation></xsd:element><xsd:element name="status" type="xsd:int"><xsd:annotation><xsd:documentation>Statusanzeige: 0=Online, 1=Timer, 2=Warnung</xsd:documentation></xsd:annotation></xsd:element><xsd:element name="clientSperren" type="xsd:boolean"><xsd:annotation><xsd:documentation>Flag, um den Client zu sperren</xsd:documentation></xsd:annotation></xsd:element><xsd:element name="msg" type="xsd:string"><xsd:annotation><xsd:documentation>Eine Message für den Client</xsd:documentation></xsd:annotation></xsd:element></xsd:all></xsd:complexType></xsd:schema><xsd:schema/><xsd:schema elementFormDefault="qualified" targetNamespace="http://www.ds2/firefox/ws/methoden/P1/"><xsd:import namespace="http://www.ds2/firefox/ws/xml/"/><xsd:element name="holeZufall"><xsd:complexType/></xsd:element><xsd:element name="P1_holeZufall_Response"><xsd:complexType><xsd:sequence><xsd:element name=
"r
>  c" type="xsd:int"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="getPInfo"><xsd:complexType><xsd:sequence><xsd:element name="clientAdresse" type="xsd:string"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element name="P1_getPInfo_Response"><xsd:complexType><xsd:sequence><xsd:element name="rc" type="u0:ProxyInfoType"/></xsd:sequence></xsd:complexType></xsd:element></xsd:schema></types><message name="P1_holeZufall_Request"><part element="mns0:holeZufall" name="params"/></message><message name="P1_getPInfo_Response"><part element="mns0:P1_getPInfo_Response" name="rc"/></message><message name="P1_holeZufall_Response"><part element="mns0:P1_holeZufall_Response" name="rc"/></message><message name="P1_getPInfo_Request"><part element="mns0:getPInfo" name="params"/></message><portType name="P1"><operation name="holeZufall"><documentation>Liefert eine Zufallszahl zurück</documentation><input message="tns:P1_holeZufall_Request"/><output message="tns:P1_hol
eZ
>  ufall_Response"/></operation><operation name="getPInfo"><documentation>Liefert eine Info an den Client</documentation><input message="tns:P1_getPInfo_Request"/><output message="tns:P1_getPInfo_Response"/></operation></portType><binding name="P1Binding0" type="tns:P1"><soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/><operation name="holeZufall"><soap:operation soapAction="http://www.ds2/firefox/ws/methoden/#holeZufall"/><input><soap:body use="literal"/></input><output><soap:body use="literal"/></output></operation><operation name="getPInfo"><soap:operation soapAction="http://www.ds2/firefox/ws/methoden/#getPInfo"/><input><soap:body use="literal"/></input><output><soap:body use="literal"/></output></operation></binding><service name="FirefoxService"><port binding="tns:P1Binding0" name="P1"><soap:address location="http://localhost/services/Bla"/></port></service></definitions>
> 
> 
> ------------------------------------------------------------------------
> 
> <?xml version="1.0" encoding="UTF-8" standalone="no"?><web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1" xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1"><!--Created by XD5--><dep:environment><dep:moduleId><dep:groupId>FirefoxWsTest</dep:groupId><dep:artifactId>War1</dep:artifactId><dep:version>1.0</dep:version><dep:type>war</dep:type></dep:moduleId><dep:dependencies><dep:dependency><dep:groupId>geronimo</dep:groupId><dep:artifactId>geronimo-axis</dep:artifactId><dep:type>jar</dep:type></dep:dependency><dep:dependency><dep:groupId>geronimo</dep:groupId><dep:artifactId>geronimo-webservices</dep:artifactId><dep:type>jar</dep:type></dep:dependency></dep:dependencies></dep:environment></web-app>
> 
> 
> ------------------------------------------------------------------------
> 
> <?xml version="1.0" encoding="UTF-8" standalone="no"?><java-wsdl-mapping xmlns:p0="http://www.ds2/firefox/ws/xml/" xmlns:wsNS="http://www.ds2/firefox/ws/" version="1.1" 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_jaxrpc_mapping_1_1.xsd" xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by XD5--><package-mapping><package-type>firefox.test.ejb.xml</package-type><namespaceURI>http://www.ds2/firefox/ws/xml/</namespaceURI></package-mapping><java-xml-type-mapping><java-type>firefox.test.ejb.xml.ProxyInfo</java-type><root-type-qname>p0:ProxyInfoType</root-type-qname><qname-scope>complexType</qname-scope><variable-mapping><java-variable-name>serverZeit</java-variable-name><xml-element-name>serverZeit</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>
<j
>  ava-variable-name>clientSperren</java-variable-name><xml-element-name>clientSperren</xml-element-name></variable-mapping><variable-mapping><java-variable-name>msg</java-variable-name><xml-element-name>msg</xml-element-name></variable-mapping></java-xml-type-mapping><service-interface-mapping><service-interface>firefox.test.ws.EPIF</service-interface><wsdl-service-name>wsNS:FirefoxService</wsdl-service-name><port-mapping><port-name>P1</port-name><java-port>P1</java-port></port-mapping></service-interface-mapping><service-endpoint-interface-mapping><service-endpoint-interface>firefox.test.ws.EPIF</service-endpoint-interface><wsdl-port-type>wsNS:P1</wsdl-port-type><wsdl-binding>wsNS:P1Binding0</wsdl-binding><service-endpoint-method-mapping><java-method-name>holeZufall</java-method-name><wsdl-operation>holeZufall</wsdl-operation><wrapped-element/><wsdl-return-value-mapping><method-return-value>int</method-return-value><wsdl-message>wsNS:P1_holeZufall_Response</wsdl-message><ws
dl
>  -message-part-name>rc</wsdl-message-part-name></wsdl-return-value-mapping></service-endpoint-method-mapping><service-endpoint-method-mapping><java-method-name>holeProxyInfo</java-method-name><wsdl-operation>getPInfo</wsdl-operation><wrapped-element/><method-param-parts-mapping><param-position>0</param-position><param-type>java.lang.String</param-type><wsdl-message-mapping><wsdl-message>wsNS:P1_getPInfo_Request</wsdl-message><wsdl-message-part-name>clientAdresse</wsdl-message-part-name><parameter-mode>IN</parameter-mode></wsdl-message-mapping></method-param-parts-mapping><wsdl-return-value-mapping><method-return-value>firefox.test.ejb.xml.ProxyInfo</method-return-value><wsdl-message>wsNS:P1_getPInfo_Response</wsdl-message><wsdl-message-part-name>rc</wsdl-message-part-name></wsdl-return-value-mapping></service-endpoint-method-mapping></service-endpoint-interface-mapping></java-wsdl-mapping>
> 
> 
> ------------------------------------------------------------------------
> 
> <?xml version="1.0" encoding="UTF-8" standalone="no"?><web-app version="2.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by XD5--><display-name>Firefox Webservices Testsite</display-name><listener><listener-class>firefox.test.listeners.StartupListener</listener-class></listener><servlet><description>Die Update-RDF-Datei</description><servlet-name>updateSite</servlet-name><servlet-class>firefox.test.servlets.UpdateSite</servlet-class></servlet><servlet-mapping><servlet-name>updateSite</servlet-name><url-pattern>/update.rdf</url-pattern></servlet-mapping><servlet><servlet-name>JaxEP</servlet-name><servlet-class>firefox.test.ws.EP</servlet-class></servlet><servlet-mapping><servlet-name>JaxEP</servlet-name><url-pattern>/ep1</url-pattern></servlet-mapping><servlet><servlet-name>microsummary</servlet-name><servlet-class
>f
>  irefox.test.servlets.Microsummary</servlet-class></servlet><servlet-mapping><servlet-name>microsummary</servlet-name><url-pattern>/ms.xml</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jspx</welcome-file></welcome-file-list><jsp-config><taglib><taglib-uri>/fxws</taglib-uri><taglib-location>/WEB-INF/fxws.tld</taglib-location></taglib></jsp-config></web-app>
> 
> 
> ------------------------------------------------------------------------
> 
> <?xml version="1.0" encoding="UTF-8" standalone="no"?><webservices version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/j2ee_web_services_1_1.xsd" xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by XD5--><display-name>Firefox Webservice</display-name><webservice-description><description>Ein Testservice zur Nutzung mit einer Extension.</description><webservice-description-name>FirefoxService</webservice-description-name><wsdl-file>WEB-INF/wsdl/firefox.wsdl</wsdl-file><jaxrpc-mapping-file>WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file><port-component><port-component-name>P1</port-component-name><wsdl-port xmlns:ws0ns0="http://www.ds2/firefox/ws/">ws0ns0:P1</wsdl-port><service-endpoint-interface>firefox.test.ws.EPIF</service-endpoint-interface><service-impl-bean><servlet-link>JaxEP</servlet-link></service-impl-bean></port-component></webservice-description></webservices>
> 
> 
> ------------------------------------------------------------------------
> 
> /**
>  * 
>  */
> package firefox.test.ws;
> 
> import java.util.Random;
> 
> import javax.jws.WebMethod;
> import javax.jws.WebService;
> 
> import firefox.test.ejb.xml.ProxyInfo;
> 
> import xd5.annotations.WsdlOperationsArt;
> import xd5.annotations.ejb.XD5EjbInterfaceMethod;
> import xd5.annotations.web.XD5WebServlet;
> import xd5.annotations.ws.XD5WebservicePort;
> 
> import kaeto23.tools.DebugLogger;
> 
> /**
>  * @author kaeto23
>  *
>  */
> @WebService(serviceName="FirefoxService",portName="P1")
> @XD5WebServlet(name="JaxEP", urlMappings={"/ep1"})
> @XD5WebservicePort(portName="P1", serviceNameID="FirefoxService",jaxRpcServletName="JaxEP",jaxRpcServiceIF="firefox.test.ws.EPIF")
> public class EP extends DebugLogger implements EPIF {
> 	private Random zufall=null;
> 
> 	/**
> 	 * 
> 	 */
> 	public EP() {
> 		super();
> 		zufall=new Random();
> 	}
> 	@WebMethod
> 	@XD5EjbInterfaceMethod(descr = "Liefert eine Zufallszahl zur\u00fcck",wsdlOperation=WsdlOperationsArt.Notification)
> 	public int holeZufall() {
> 		return zufall.nextInt();
> 	}
> 	@XD5EjbInterfaceMethod(descr="Liefert eine Info an den Client",wsdlAlias="getPInfo")
> 	@WebMethod(operationName="getPInfo")
> 	public ProxyInfo holeProxyInfo(String clientAdresse){
> 		finest("Liefere Proxyinfo. Param ist "+clientAdresse);
> 		ProxyInfo rc=new ProxyInfo();
> 		rc.setClientSperren(false);
> 		rc.setMsg("Hello, Client");
> 		rc.setStatus(zufall.nextInt(3));
> 		return rc;
> 	}
> 
> }
> 
> 
> ------------------------------------------------------------------------
> 
> /**
>  * 
>  */
> package firefox.test.ws;
> 
> import java.rmi.Remote;
> import java.rmi.RemoteException;
> 
> import firefox.test.ejb.xml.ProxyInfo;
> 
> /**
>  * @author kaeto23
>  *
>  */
> public interface EPIF extends Remote{
> 	public int holeZufall() throws RemoteException;
> 	public ProxyInfo holeProxyInfo(String clientAdresse) throws RemoteException;
> }

- --
Kaeto23

HTTP: http://kaeto23.dnsalias.com (german!)
Jabber: jabber://kaeto23@jabber.ds2/DS2

Reclaim Your Inbox!
http://www.mozilla.org/products/thunderbird/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFFgVfXbiSTaBU+G6oRA20XAKCIjdhnQVBdVwq+BVcNPkasJ4d7ygCfZiEF
d9V4lKDORtAATmp4LMir7wc=
=cG2n
-----END PGP SIGNATURE-----



	
		
___________________________________________________________ 
Der fr�he Vogel f�ngt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de

Re: [Bulk] Re: [Bulk] JAX-RPC Webservice deploys with NPE

Posted by Kaeto23 <ka...@yahoo.de>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160

Hello, Lasantha

my Geronimo version here is 1.1.1 tomcat.

Regarding the various files: I already attached those files with the
first mail in this thread. Is your mail provider stripping off any
attachments?

:/

Anyway, yes, I agree that JAX RPC is definitely one of the worst ideas
to create webservices. I already did some testing with JAX-WS (aka
JAX-RPC 2) and all I can say is that I LOVE IT :P Especially the
automatic wsdl generation. It's what I absolutely like ^_^

I heard that Geronimo 2.0 will feature JAX-WS and EJB3. According to the
milestone documentation a milestone will be available this year.
Hopefully the JAX-WS will find its way to Geronimo soon :P

Best regards

Dirk

Lasantha Ranaweera schrieb:
> Hi Dirk,
> 
> First thanks for the comment regarding the tutorial and we are always
> encourage users to put their comments and their involvement to improve
> this community effort. :)
> 
> What is your Geronimo version? Are you deploying your web service as WAR
> file or EJB component?  AFAIK there is a bug in web serive current
> implementation (GERONIMO-1597 which is still in the JIRA with open state).
> If it is a WAR file I might be able help you to resolve it. Then if you
> don't mind please share other config files (webservices.xml, WSDL ...). If
> your component is deployed as a EJB component we might need some help from
> Web Service experts in the list. ;)
> 
> Since JAX-RPC is not the easist thing to deal with it is better to use
> some kind of tool to generate mapping files IMO (this is why JAX-WS comes
> in to the picture in JEE5).
> 
> Thanks,
> Lasantha Ranaweera
> 
> Hello,
> 
> sorry, I totally forgot to post the stacktrace. Here it is:
> 
> org.apache.geronimo.common.DeploymentException:
> java.lang.NullPointerException
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:383)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
> 	at
> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
> 	at
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
> 	at
> org.apache.geronimo.deployment.plugin.local.AbstractDeployCommand.doDeploy(AbstractDeployCommand.java:106)
> 	at
> org.apache.geronimo.deployment.plugin.local.DistributeCommand.run(DistributeCommand.java:60)
> 	at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.NullPointerException
> 	at
> org.apache.geronimo.axis.builder.AxisServiceBuilder.createServiceDesc(AxisServiceBuilder.java:83)
> 	at
> org.apache.geronimo.axis.builder.AxisServiceBuilder.createServiceInfo(AxisServiceBuilder.java:73)
> 	at
> org.apache.geronimo.axis.builder.AxisBuilder.configureEJB(AxisBuilder.java:141)
> 	at
> org.apache.geronimo.axis.builder.AxisBuilder$$FastClassByCGLIB$$16a52a9a.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
> 	at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
> 	at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
> 	at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
> 	at
> org.apache.geronimo.j2ee.deployment.ServiceReferenceBuilder$$EnhancerByCGLIB$$8018ba1f.configureEJB(<generated>)
> 	at
> org.openejb.deployment.SessionBuilder.addWSContainerGBean(SessionBuilder.java:215)
> 	at
> org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:197)
> 	at
> org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514)
> 	at
> org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
> 	at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
> 	at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
> 	at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
> 	at
> org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$fe5ad2d4.addGBeans(<generated>)
> 	at
> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562)
> 	at
> org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
> 	at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
> 	at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
> 	at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
> 	at
> org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$a47db46.buildConfiguration(<generated>)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
> 	... 10 more
> 
> 
> 
> Best regards
> 
> Dirk
> 
> D. Strauss schrieb:
>>>> Hello,
>>>>
>>>> I read the Geronimo Wiki about the Sample JAX RPC webservice. Good
>>>> tutorial :P
>>>>
>>>> However, I fail in developing my own version of it (and YES I don't want
>>>> to install seven hundred tools to get it working as suggested already on
>>>> the ML :P )
>>>>
>>>> Basically, the error is a NullPointerException on deploy time. I think
>>>> that the error may be in the jaxrpc-mapping.xml but I'm not quite sure
>>>> since this is my first (or second?) try to create a webservice with
>>>> jaxrpc. I'm used to create EJB webservices but thx to a specific bug in
>>>> Geronimo I can't use them anymore :/
>>>>
>>>> So, I'll attach my jaxrpc-mapping.xml and several other files so that
>>>> you may get an overview of all related files. Maybe Lasantha will find
>>>> the answer ;)
>>>>
>>>> Best regards
>>>>
>>>> Dirk
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><definitions
>>>> xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
>>>> xmlns:mns="http://www.ds2/firefox/ws/methoden/"
>>>> xmlns:mns0="http://www.ds2/firefox/ws/methoden/P1/"
>>>> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>>>> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
>>>> xmlns:tns="http://www.ds2/firefox/ws/"
>>>> xmlns:u0="http://www.ds2/firefox/ws/xml/"
>>>> xmlns:xd5="http://www.ds2/xd5/SchemaDatentyp/"
>>>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> targetNamespace="http://www.ds2/firefox/ws/"
>>>> xmlns="http://schemas.xmlsoap.org/wsdl/"><!--Created by
>>>> XD5--><types><xsd:schema elementFormDefault="qualified"
>>>> targetNamespace="http://www.ds2/firefox/ws/xml/"><xsd:element
>>>> name="ProxyInfo" type="u0:ProxyInfoType"/><xsd:complexType
>>>> name="ProxyInfoType"><xsd:annotation><xsd:documentation>Ein Info-Element
>>>> mit Proxydaten</xsd:documentation></xsd:annotation><xsd:all><xsd:element
>>>> name="serv
> er
>>>>  Zeit" type="xsd:dateTime"><xsd:annotation><xsd:documentation>Die
>>>> Serverzeit</xsd:documentation></xsd:annotation></xsd:element><xsd:element
>>>> name="status"
>>>> type="xsd:int"><xsd:annotation><xsd:documentation>Statusanzeige:
>>>> 0=Online, 1=Timer,
>>>> 2=Warnung</xsd:documentation></xsd:annotation></xsd:element><xsd:element
>>>> name="clientSperren"
>>>> type="xsd:boolean"><xsd:annotation><xsd:documentation>Flag, um den
>>>> Client zu
>>>> sperren</xsd:documentation></xsd:annotation></xsd:element><xsd:element
>>>> name="msg" type="xsd:string"><xsd:annotation><xsd:documentation>Eine
>>>> Message für den
>>>> Client</xsd:documentation></xsd:annotation></xsd:element></xsd:all></xsd:complexType></xsd:schema><xsd:schema/><xsd:schema
>>>> elementFormDefault="qualified"
>>>> targetNamespace="http://www.ds2/firefox/ws/methoden/P1/"><xsd:import
>>>> namespace="http://www.ds2/firefox/ws/xml/"/><xsd:element
>>>> name="holeZufall"><xsd:complexType/></xsd:element><xsd:element
>>>> name="P1_holeZufall_Response"><xsd:complexType><xsd:sequence><xsd:element
>>>> name=
> "r
>>>>  c"
>>>> type="xsd:int"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element
>>>> name="getPInfo"><xsd:complexType><xsd:sequence><xsd:element
>>>> name="clientAdresse"
>>>> type="xsd:string"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element
>>>> name="P1_getPInfo_Response"><xsd:complexType><xsd:sequence><xsd:element
>>>> name="rc"
>>>> type="u0:ProxyInfoType"/></xsd:sequence></xsd:complexType></xsd:element></xsd:schema></types><message
>>>> name="P1_holeZufall_Request"><part element="mns0:holeZufall"
>>>> name="params"/></message><message name="P1_getPInfo_Response"><part
>>>> element="mns0:P1_getPInfo_Response" name="rc"/></message><message
>>>> name="P1_holeZufall_Response"><part
>>>> element="mns0:P1_holeZufall_Response" name="rc"/></message><message
>>>> name="P1_getPInfo_Request"><part element="mns0:getPInfo"
>>>> name="params"/></message><portType name="P1"><operation
>>>> name="holeZufall"><documentation>Liefert eine Zufallszahl
>>>> zurück</documentation><input
>>>> message="tns:P1_holeZufall_Request"/><output message="tns:P1_hol
> eZ
>>>>  ufall_Response"/></operation><operation
>>>> name="getPInfo"><documentation>Liefert eine Info an den
>>>> Client</documentation><input message="tns:P1_getPInfo_Request"/><output
>>>> message="tns:P1_getPInfo_Response"/></operation></portType><binding
>>>> name="P1Binding0" type="tns:P1"><soap:binding style="document"
>>>> transport="http://schemas.xmlsoap.org/soap/http"/><operation
>>>> name="holeZufall"><soap:operation
>>>> soapAction="http://www.ds2/firefox/ws/methoden/#holeZufall"/><input><soap:body
>>>> use="literal"/></input><output><soap:body
>>>> use="literal"/></output></operation><operation
>>>> name="getPInfo"><soap:operation
>>>> soapAction="http://www.ds2/firefox/ws/methoden/#getPInfo"/><input><soap:body
>>>> use="literal"/></input><output><soap:body
>>>> use="literal"/></output></operation></binding><service
>>>> name="FirefoxService"><port binding="tns:P1Binding0"
>>>> name="P1"><soap:address
>>>> location="http://localhost/services/Bla"/></port></service></definitions>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><web-app
>>>> xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1"
>>>> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1"><!--Created
>>>> by
>>>> XD5--><dep:environment><dep:moduleId><dep:groupId>FirefoxWsTest</dep:groupId><dep:artifactId>War1</dep:artifactId><dep:version>1.0</dep:version><dep:type>war</dep:type></dep:moduleId><dep:dependencies><dep:dependency><dep:groupId>geronimo</dep:groupId><dep:artifactId>geronimo-axis</dep:artifactId><dep:type>jar</dep:type></dep:dependency><dep:dependency><dep:groupId>geronimo</dep:groupId><dep:artifactId>geronimo-webservices</dep:artifactId><dep:type>jar</dep:type></dep:dependency></dep:dependencies></dep:environment></web-app>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><java-wsdl-mapping
>>>> xmlns:p0="http://www.ds2/firefox/ws/xml/"
>>>> xmlns:wsNS="http://www.ds2/firefox/ws/" version="1.1"
>>>> 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_jaxrpc_mapping_1_1.xsd"
>>>> xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by
>>>> XD5--><package-mapping><package-type>firefox.test.ejb.xml</package-type><namespaceURI>http://www.ds2/firefox/ws/xml/</namespaceURI></package-mapping><java-xml-type-mapping><java-type>firefox.test.ejb.xml.ProxyInfo</java-type><root-type-qname>p0:ProxyInfoType</root-type-qname><qname-scope>complexType</qname-scope><variable-mapping><java-variable-name>serverZeit</java-variable-name><xml-element-name>serverZeit</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>
> <j
>>>>  ava-variable-name>clientSperren</java-variable-name><xml-element-name>clientSperren</xml-element-name></variable-mapping><variable-mapping><java-variable-name>msg</java-variable-name><xml-element-name>msg</xml-element-name></variable-mapping></java-xml-type-mapping><service-interface-mapping><service-interface>firefox.test.ws.EPIF</service-interface><wsdl-service-name>wsNS:FirefoxService</wsdl-service-name><port-mapping><port-name>P1</port-name><java-port>P1</java-port></port-mapping></service-interface-mapping><service-endpoint-interface-mapping><service-endpoint-interface>firefox.test.ws.EPIF</service-endpoint-interface><wsdl-port-type>wsNS:P1</wsdl-port-type><wsdl-binding>wsNS:P1Binding0</wsdl-binding><service-endpoint-method-mapping><java-method-name>holeZufall</java-method-name><wsdl-operation>holeZufall</wsdl-operation><wrapped-element/><wsdl-return-value-mapping><method-return-value>int</method-return-value><wsdl-message>wsNS:P1_holeZufall_Response</wsdl-message>
<w
>>  s
> dl
>>>>  -message-part-name>rc</wsdl-message-part-name></wsdl-return-value-mapping></service-endpoint-method-mapping><service-endpoint-method-mapping><java-method-name>holeProxyInfo</java-method-name><wsdl-operation>getPInfo</wsdl-operation><wrapped-element/><method-param-parts-mapping><param-position>0</param-position><param-type>java.lang.String</param-type><wsdl-message-mapping><wsdl-message>wsNS:P1_getPInfo_Request</wsdl-message><wsdl-message-part-name>clientAdresse</wsdl-message-part-name><parameter-mode>IN</parameter-mode></wsdl-message-mapping></method-param-parts-mapping><wsdl-return-value-mapping><method-return-value>firefox.test.ejb.xml.ProxyInfo</method-return-value><wsdl-message>wsNS:P1_getPInfo_Response</wsdl-message><wsdl-message-part-name>rc</wsdl-message-part-name></wsdl-return-value-mapping></service-endpoint-method-mapping></service-endpoint-interface-mapping></java-wsdl-mapping>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><web-app
>>>> version="2.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
>>>> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
>>>> xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by
>>>> XD5--><display-name>Firefox Webservices
>>>> Testsite</display-name><listener><listener-class>firefox.test.listeners.StartupListener</listener-class></listener><servlet><description>Die
>>>> Update-RDF-Datei</description><servlet-name>updateSite</servlet-name><servlet-class>firefox.test.servlets.UpdateSite</servlet-class></servlet><servlet-mapping><servlet-name>updateSite</servlet-name><url-pattern>/update.rdf</url-pattern></servlet-mapping><servlet><servlet-name>JaxEP</servlet-name><servlet-class>firefox.test.ws.EP</servlet-class></servlet><servlet-mapping><servlet-name>JaxEP</servlet-name><url-pattern>/ep1</url-pattern></servlet-mapping><servlet><servlet-name>microsummary</servlet-name><servlet-class
>>>> f
>>>>  irefox.test.servlets.Microsummary</servlet-class></servlet><servlet-mapping><servlet-name>microsummary</servlet-name><url-pattern>/ms.xml</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jspx</welcome-file></welcome-file-list><jsp-config><taglib><taglib-uri>/fxws</taglib-uri><taglib-location>/WEB-INF/fxws.tld</taglib-location></taglib></jsp-config></web-app>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><webservices
>>>> version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
>>>> http://java.sun.com/xml/ns/j2ee/j2ee_web_services_1_1.xsd"
>>>> xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by
>>>> XD5--><display-name>Firefox
>>>> Webservice</display-name><webservice-description><description>Ein
>>>> Testservice zur Nutzung mit einer
>>>> Extension.</description><webservice-description-name>FirefoxService</webservice-description-name><wsdl-file>WEB-INF/wsdl/firefox.wsdl</wsdl-file><jaxrpc-mapping-file>WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file><port-component><port-component-name>P1</port-component-name><wsdl-port
>>>> xmlns:ws0ns0="http://www.ds2/firefox/ws/">ws0ns0:P1</wsdl-port><service-endpoint-interface>firefox.test.ws.EPIF</service-endpoint-interface><service-impl-bean><servlet-link>JaxEP</servlet-link></service-impl-bean></port-component></webservice-description></webservices>
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> /**
>>>>  *
>>>>  */
>>>> package firefox.test.ws;
>>>>
>>>> import java.util.Random;
>>>>
>>>> import javax.jws.WebMethod;
>>>> import javax.jws.WebService;
>>>>
>>>> import firefox.test.ejb.xml.ProxyInfo;
>>>>
>>>> import xd5.annotations.WsdlOperationsArt;
>>>> import xd5.annotations.ejb.XD5EjbInterfaceMethod;
>>>> import xd5.annotations.web.XD5WebServlet;
>>>> import xd5.annotations.ws.XD5WebservicePort;
>>>>
>>>> import kaeto23.tools.DebugLogger;
>>>>
>>>> /**
>>>>  * @author kaeto23
>>>>  *
>>>>  */
>>>> @WebService(serviceName="FirefoxService",portName="P1")
>>>> @XD5WebServlet(name="JaxEP", urlMappings={"/ep1"})
>>>> @XD5WebservicePort(portName="P1",
>>>> serviceNameID="FirefoxService",jaxRpcServletName="JaxEP",jaxRpcServiceIF="firefox.test.ws.EPIF")
>>>> public class EP extends DebugLogger implements EPIF {
>>>> 	private Random zufall=null;
>>>>
>>>> 	/**
>>>> 	 *
>>>> 	 */
>>>> 	public EP() {
>>>> 		super();
>>>> 		zufall=new Random();
>>>> 	}
>>>> 	@WebMethod
>>>> 	@XD5EjbInterfaceMethod(descr = "Liefert eine Zufallszahl
>>>> zur\u00fcck",wsdlOperation=WsdlOperationsArt.Notification)
>>>> 	public int holeZufall() {
>>>> 		return zufall.nextInt();
>>>> 	}
>>>> 	@XD5EjbInterfaceMethod(descr="Liefert eine Info an den
>>>> Client",wsdlAlias="getPInfo")
>>>> 	@WebMethod(operationName="getPInfo")
>>>> 	public ProxyInfo holeProxyInfo(String clientAdresse){
>>>> 		finest("Liefere Proxyinfo. Param ist "+clientAdresse);
>>>> 		ProxyInfo rc=new ProxyInfo();
>>>> 		rc.setClientSperren(false);
>>>> 		rc.setMsg("Hello, Client");
>>>> 		rc.setStatus(zufall.nextInt(3));
>>>> 		return rc;
>>>> 	}
>>>>
>>>> }
>>>>
>>>>
>>>> ------------------------------------------------------------------------
>>>>
>>>> /**
>>>>  *
>>>>  */
>>>> package firefox.test.ws;
>>>>
>>>> import java.rmi.Remote;
>>>> import java.rmi.RemoteException;
>>>>
>>>> import firefox.test.ejb.xml.ProxyInfo;
>>>>
>>>> /**
>>>>  * @author kaeto23
>>>>  *
>>>>  */
>>>> public interface EPIF extends Remote{
>>>> 	public int holeZufall() throws RemoteException;
>>>> 	public ProxyInfo holeProxyInfo(String clientAdresse) throws
>>>> RemoteException;
>>>> }
>>
>>
>>
>>
>>
___________________________________________________________
Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail:
http://mail.yahoo.de
>>

- --
Kaeto23

HTTP: http://kaeto23.dnsalias.com (german!)
Jabber: jabber://kaeto23@jabber.ds2/DS2

Reclaim Your Inbox!
http://www.mozilla.org/products/thunderbird/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFFgligbiSTaBU+G6oRA/KFAJ4+oxZXizDsDdkW2vG5MrZaq0+ILwCeLFKp
sZKj5XpfSIDsbT2ubyctqMw=
=u1co
-----END PGP SIGNATURE-----



	
		
___________________________________________________________ 
Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de

Re: [Bulk] JAX-RPC Webservice deploys with NPE

Posted by Lasantha Ranaweera <la...@opensource.lk>.
Hi Dirk,

First thanks for the comment regarding the tutorial and we are always
encourage users to put their comments and their involvement to improve
this community effort. :)

What is your Geronimo version? Are you deploying your web service as WAR
file or EJB component?  AFAIK there is a bug in web serive current
implementation (GERONIMO-1597 which is still in the JIRA with open state).
If it is a WAR file I might be able help you to resolve it. Then if you
don't mind please share other config files (webservices.xml, WSDL ...). If
your component is deployed as a EJB component we might need some help from
Web Service experts in the list. ;)

Since JAX-RPC is not the easist thing to deal with it is better to use
some kind of tool to generate mapping files IMO (this is why JAX-WS comes
in to the picture in JEE5).

Thanks,
Lasantha Ranaweera

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: RIPEMD160
>
> Hello,
>
> sorry, I totally forgot to post the stacktrace. Here it is:
>
> org.apache.geronimo.common.DeploymentException:
> java.lang.NullPointerException
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:383)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
> 	at
> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
> 	at
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
> 	at
> org.apache.geronimo.deployment.plugin.local.AbstractDeployCommand.doDeploy(AbstractDeployCommand.java:106)
> 	at
> org.apache.geronimo.deployment.plugin.local.DistributeCommand.run(DistributeCommand.java:60)
> 	at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.NullPointerException
> 	at
> org.apache.geronimo.axis.builder.AxisServiceBuilder.createServiceDesc(AxisServiceBuilder.java:83)
> 	at
> org.apache.geronimo.axis.builder.AxisServiceBuilder.createServiceInfo(AxisServiceBuilder.java:73)
> 	at
> org.apache.geronimo.axis.builder.AxisBuilder.configureEJB(AxisBuilder.java:141)
> 	at
> org.apache.geronimo.axis.builder.AxisBuilder$$FastClassByCGLIB$$16a52a9a.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
> 	at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
> 	at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
> 	at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
> 	at
> org.apache.geronimo.j2ee.deployment.ServiceReferenceBuilder$$EnhancerByCGLIB$$8018ba1f.configureEJB(<generated>)
> 	at
> org.openejb.deployment.SessionBuilder.addWSContainerGBean(SessionBuilder.java:215)
> 	at
> org.openejb.deployment.SessionBuilder.buildBeans(SessionBuilder.java:197)
> 	at
> org.openejb.deployment.OpenEJBModuleBuilder.addGBeans(OpenEJBModuleBuilder.java:514)
> 	at
> org.openejb.deployment.OpenEJBModuleBuilder$$FastClassByCGLIB$$11bd7b20.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
> 	at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
> 	at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
> 	at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
> 	at
> org.apache.geronimo.j2ee.deployment.ModuleBuilder$$EnhancerByCGLIB$$fe5ad2d4.addGBeans(<generated>)
> 	at
> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:562)
> 	at
> org.apache.geronimo.j2ee.deployment.EARConfigBuilder$$FastClassByCGLIB$$38e56ec6.invoke(<generated>)
> 	at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
> 	at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
> 	at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:817)
> 	at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
> 	at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
> 	at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
> 	at
> org.apache.geronimo.deployment.ConfigurationBuilder$$EnhancerByCGLIB$$a47db46.buildConfiguration(<generated>)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
> 	... 10 more
>
>
>
> Best regards
>
> Dirk
>
> D. Strauss schrieb:
>> Hello,
>>
>> I read the Geronimo Wiki about the Sample JAX RPC webservice. Good
>> tutorial :P
>>
>> However, I fail in developing my own version of it (and YES I don't want
>> to install seven hundred tools to get it working as suggested already on
>> the ML :P )
>>
>> Basically, the error is a NullPointerException on deploy time. I think
>> that the error may be in the jaxrpc-mapping.xml but I'm not quite sure
>> since this is my first (or second?) try to create a webservice with
>> jaxrpc. I'm used to create EJB webservices but thx to a specific bug in
>> Geronimo I can't use them anymore :/
>>
>> So, I'll attach my jaxrpc-mapping.xml and several other files so that
>> you may get an overview of all related files. Maybe Lasantha will find
>> the answer ;)
>>
>> Best regards
>>
>> Dirk
>>
>>
>> ------------------------------------------------------------------------
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><definitions
>> xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
>> xmlns:mns="http://www.ds2/firefox/ws/methoden/"
>> xmlns:mns0="http://www.ds2/firefox/ws/methoden/P1/"
>> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
>> xmlns:tns="http://www.ds2/firefox/ws/"
>> xmlns:u0="http://www.ds2/firefox/ws/xml/"
>> xmlns:xd5="http://www.ds2/xd5/SchemaDatentyp/"
>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> targetNamespace="http://www.ds2/firefox/ws/"
>> xmlns="http://schemas.xmlsoap.org/wsdl/"><!--Created by
>> XD5--><types><xsd:schema elementFormDefault="qualified"
>> targetNamespace="http://www.ds2/firefox/ws/xml/"><xsd:element
>> name="ProxyInfo" type="u0:ProxyInfoType"/><xsd:complexType
>> name="ProxyInfoType"><xsd:annotation><xsd:documentation>Ein Info-Element
>> mit Proxydaten</xsd:documentation></xsd:annotation><xsd:all><xsd:element
>> name="serv
> er
>>  Zeit" type="xsd:dateTime"><xsd:annotation><xsd:documentation>Die
>> Serverzeit</xsd:documentation></xsd:annotation></xsd:element><xsd:element
>> name="status"
>> type="xsd:int"><xsd:annotation><xsd:documentation>Statusanzeige:
>> 0=Online, 1=Timer,
>> 2=Warnung</xsd:documentation></xsd:annotation></xsd:element><xsd:element
>> name="clientSperren"
>> type="xsd:boolean"><xsd:annotation><xsd:documentation>Flag, um den
>> Client zu
>> sperren</xsd:documentation></xsd:annotation></xsd:element><xsd:element
>> name="msg" type="xsd:string"><xsd:annotation><xsd:documentation>Eine
>> Message für den
>> Client</xsd:documentation></xsd:annotation></xsd:element></xsd:all></xsd:complexType></xsd:schema><xsd:schema/><xsd:schema
>> elementFormDefault="qualified"
>> targetNamespace="http://www.ds2/firefox/ws/methoden/P1/"><xsd:import
>> namespace="http://www.ds2/firefox/ws/xml/"/><xsd:element
>> name="holeZufall"><xsd:complexType/></xsd:element><xsd:element
>> name="P1_holeZufall_Response"><xsd:complexType><xsd:sequence><xsd:element
>> name=
> "r
>>  c"
>> type="xsd:int"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element
>> name="getPInfo"><xsd:complexType><xsd:sequence><xsd:element
>> name="clientAdresse"
>> type="xsd:string"/></xsd:sequence></xsd:complexType></xsd:element><xsd:element
>> name="P1_getPInfo_Response"><xsd:complexType><xsd:sequence><xsd:element
>> name="rc"
>> type="u0:ProxyInfoType"/></xsd:sequence></xsd:complexType></xsd:element></xsd:schema></types><message
>> name="P1_holeZufall_Request"><part element="mns0:holeZufall"
>> name="params"/></message><message name="P1_getPInfo_Response"><part
>> element="mns0:P1_getPInfo_Response" name="rc"/></message><message
>> name="P1_holeZufall_Response"><part
>> element="mns0:P1_holeZufall_Response" name="rc"/></message><message
>> name="P1_getPInfo_Request"><part element="mns0:getPInfo"
>> name="params"/></message><portType name="P1"><operation
>> name="holeZufall"><documentation>Liefert eine Zufallszahl
>> zurück</documentation><input
>> message="tns:P1_holeZufall_Request"/><output message="tns:P1_hol
> eZ
>>  ufall_Response"/></operation><operation
>> name="getPInfo"><documentation>Liefert eine Info an den
>> Client</documentation><input message="tns:P1_getPInfo_Request"/><output
>> message="tns:P1_getPInfo_Response"/></operation></portType><binding
>> name="P1Binding0" type="tns:P1"><soap:binding style="document"
>> transport="http://schemas.xmlsoap.org/soap/http"/><operation
>> name="holeZufall"><soap:operation
>> soapAction="http://www.ds2/firefox/ws/methoden/#holeZufall"/><input><soap:body
>> use="literal"/></input><output><soap:body
>> use="literal"/></output></operation><operation
>> name="getPInfo"><soap:operation
>> soapAction="http://www.ds2/firefox/ws/methoden/#getPInfo"/><input><soap:body
>> use="literal"/></input><output><soap:body
>> use="literal"/></output></operation></binding><service
>> name="FirefoxService"><port binding="tns:P1Binding0"
>> name="P1"><soap:address
>> location="http://localhost/services/Bla"/></port></service></definitions>
>>
>>
>> ------------------------------------------------------------------------
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><web-app
>> xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-1.1"
>> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.1"><!--Created
>> by
>> XD5--><dep:environment><dep:moduleId><dep:groupId>FirefoxWsTest</dep:groupId><dep:artifactId>War1</dep:artifactId><dep:version>1.0</dep:version><dep:type>war</dep:type></dep:moduleId><dep:dependencies><dep:dependency><dep:groupId>geronimo</dep:groupId><dep:artifactId>geronimo-axis</dep:artifactId><dep:type>jar</dep:type></dep:dependency><dep:dependency><dep:groupId>geronimo</dep:groupId><dep:artifactId>geronimo-webservices</dep:artifactId><dep:type>jar</dep:type></dep:dependency></dep:dependencies></dep:environment></web-app>
>>
>>
>> ------------------------------------------------------------------------
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><java-wsdl-mapping
>> xmlns:p0="http://www.ds2/firefox/ws/xml/"
>> xmlns:wsNS="http://www.ds2/firefox/ws/" version="1.1"
>> 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_jaxrpc_mapping_1_1.xsd"
>> xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by
>> XD5--><package-mapping><package-type>firefox.test.ejb.xml</package-type><namespaceURI>http://www.ds2/firefox/ws/xml/</namespaceURI></package-mapping><java-xml-type-mapping><java-type>firefox.test.ejb.xml.ProxyInfo</java-type><root-type-qname>p0:ProxyInfoType</root-type-qname><qname-scope>complexType</qname-scope><variable-mapping><java-variable-name>serverZeit</java-variable-name><xml-element-name>serverZeit</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>
> <j
>>  ava-variable-name>clientSperren</java-variable-name><xml-element-name>clientSperren</xml-element-name></variable-mapping><variable-mapping><java-variable-name>msg</java-variable-name><xml-element-name>msg</xml-element-name></variable-mapping></java-xml-type-mapping><service-interface-mapping><service-interface>firefox.test.ws.EPIF</service-interface><wsdl-service-name>wsNS:FirefoxService</wsdl-service-name><port-mapping><port-name>P1</port-name><java-port>P1</java-port></port-mapping></service-interface-mapping><service-endpoint-interface-mapping><service-endpoint-interface>firefox.test.ws.EPIF</service-endpoint-interface><wsdl-port-type>wsNS:P1</wsdl-port-type><wsdl-binding>wsNS:P1Binding0</wsdl-binding><service-endpoint-method-mapping><java-method-name>holeZufall</java-method-name><wsdl-operation>holeZufall</wsdl-operation><wrapped-element/><wsdl-return-value-mapping><method-return-value>int</method-return-value><wsdl-message>wsNS:P1_holeZufall_Response</wsdl-message><w
 s
> dl
>>  -message-part-name>rc</wsdl-message-part-name></wsdl-return-value-mapping></service-endpoint-method-mapping><service-endpoint-method-mapping><java-method-name>holeProxyInfo</java-method-name><wsdl-operation>getPInfo</wsdl-operation><wrapped-element/><method-param-parts-mapping><param-position>0</param-position><param-type>java.lang.String</param-type><wsdl-message-mapping><wsdl-message>wsNS:P1_getPInfo_Request</wsdl-message><wsdl-message-part-name>clientAdresse</wsdl-message-part-name><parameter-mode>IN</parameter-mode></wsdl-message-mapping></method-param-parts-mapping><wsdl-return-value-mapping><method-return-value>firefox.test.ejb.xml.ProxyInfo</method-return-value><wsdl-message>wsNS:P1_getPInfo_Response</wsdl-message><wsdl-message-part-name>rc</wsdl-message-part-name></wsdl-return-value-mapping></service-endpoint-method-mapping></service-endpoint-interface-mapping></java-wsdl-mapping>
>>
>>
>> ------------------------------------------------------------------------
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><web-app
>> version="2.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
>> http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
>> xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by
>> XD5--><display-name>Firefox Webservices
>> Testsite</display-name><listener><listener-class>firefox.test.listeners.StartupListener</listener-class></listener><servlet><description>Die
>> Update-RDF-Datei</description><servlet-name>updateSite</servlet-name><servlet-class>firefox.test.servlets.UpdateSite</servlet-class></servlet><servlet-mapping><servlet-name>updateSite</servlet-name><url-pattern>/update.rdf</url-pattern></servlet-mapping><servlet><servlet-name>JaxEP</servlet-name><servlet-class>firefox.test.ws.EP</servlet-class></servlet><servlet-mapping><servlet-name>JaxEP</servlet-name><url-pattern>/ep1</url-pattern></servlet-mapping><servlet><servlet-name>microsummary</servlet-name><servlet-class
>>f
>>  irefox.test.servlets.Microsummary</servlet-class></servlet><servlet-mapping><servlet-name>microsummary</servlet-name><url-pattern>/ms.xml</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jspx</welcome-file></welcome-file-list><jsp-config><taglib><taglib-uri>/fxws</taglib-uri><taglib-location>/WEB-INF/fxws.tld</taglib-location></taglib></jsp-config></web-app>
>>
>>
>> ------------------------------------------------------------------------
>>
>> <?xml version="1.0" encoding="UTF-8" standalone="no"?><webservices
>> version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>> xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
>> http://java.sun.com/xml/ns/j2ee/j2ee_web_services_1_1.xsd"
>> xmlns="http://java.sun.com/xml/ns/j2ee"><!--Created by
>> XD5--><display-name>Firefox
>> Webservice</display-name><webservice-description><description>Ein
>> Testservice zur Nutzung mit einer
>> Extension.</description><webservice-description-name>FirefoxService</webservice-description-name><wsdl-file>WEB-INF/wsdl/firefox.wsdl</wsdl-file><jaxrpc-mapping-file>WEB-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file><port-component><port-component-name>P1</port-component-name><wsdl-port
>> xmlns:ws0ns0="http://www.ds2/firefox/ws/">ws0ns0:P1</wsdl-port><service-endpoint-interface>firefox.test.ws.EPIF</service-endpoint-interface><service-impl-bean><servlet-link>JaxEP</servlet-link></service-impl-bean></port-component></webservice-description></webservices>
>>
>>
>> ------------------------------------------------------------------------
>>
>> /**
>>  *
>>  */
>> package firefox.test.ws;
>>
>> import java.util.Random;
>>
>> import javax.jws.WebMethod;
>> import javax.jws.WebService;
>>
>> import firefox.test.ejb.xml.ProxyInfo;
>>
>> import xd5.annotations.WsdlOperationsArt;
>> import xd5.annotations.ejb.XD5EjbInterfaceMethod;
>> import xd5.annotations.web.XD5WebServlet;
>> import xd5.annotations.ws.XD5WebservicePort;
>>
>> import kaeto23.tools.DebugLogger;
>>
>> /**
>>  * @author kaeto23
>>  *
>>  */
>> @WebService(serviceName="FirefoxService",portName="P1")
>> @XD5WebServlet(name="JaxEP", urlMappings={"/ep1"})
>> @XD5WebservicePort(portName="P1",
>> serviceNameID="FirefoxService",jaxRpcServletName="JaxEP",jaxRpcServiceIF="firefox.test.ws.EPIF")
>> public class EP extends DebugLogger implements EPIF {
>> 	private Random zufall=null;
>>
>> 	/**
>> 	 *
>> 	 */
>> 	public EP() {
>> 		super();
>> 		zufall=new Random();
>> 	}
>> 	@WebMethod
>> 	@XD5EjbInterfaceMethod(descr = "Liefert eine Zufallszahl
>> zur\u00fcck",wsdlOperation=WsdlOperationsArt.Notification)
>> 	public int holeZufall() {
>> 		return zufall.nextInt();
>> 	}
>> 	@XD5EjbInterfaceMethod(descr="Liefert eine Info an den
>> Client",wsdlAlias="getPInfo")
>> 	@WebMethod(operationName="getPInfo")
>> 	public ProxyInfo holeProxyInfo(String clientAdresse){
>> 		finest("Liefere Proxyinfo. Param ist "+clientAdresse);
>> 		ProxyInfo rc=new ProxyInfo();
>> 		rc.setClientSperren(false);
>> 		rc.setMsg("Hello, Client");
>> 		rc.setStatus(zufall.nextInt(3));
>> 		return rc;
>> 	}
>>
>> }
>>
>>
>> ------------------------------------------------------------------------
>>
>> /**
>>  *
>>  */
>> package firefox.test.ws;
>>
>> import java.rmi.Remote;
>> import java.rmi.RemoteException;
>>
>> import firefox.test.ejb.xml.ProxyInfo;
>>
>> /**
>>  * @author kaeto23
>>  *
>>  */
>> public interface EPIF extends Remote{
>> 	public int holeZufall() throws RemoteException;
>> 	public ProxyInfo holeProxyInfo(String clientAdresse) throws
>> RemoteException;
>> }
>
> - --
> Kaeto23
>
> HTTP: http://kaeto23.dnsalias.com (german!)
> Jabber: jabber://kaeto23@jabber.ds2/DS2
>
> Reclaim Your Inbox!
> http://www.mozilla.org/products/thunderbird/
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.2 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQFFgVfXbiSTaBU+G6oRA20XAKCIjdhnQVBdVwq+BVcNPkasJ4d7ygCfZiEF
> d9V4lKDORtAATmp4LMir7wc=
> =cG2n
> -----END PGP SIGNATURE-----
>
>
>
>
>
> ___________________________________________________________
> Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail:
> http://mail.yahoo.de
>