geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lin Sun <linsun....@gmail.com>
Subject Re: Simple Web Service with JAX-WS G v2.0 sample problem
Date Wed, 24 Oct 2007 13:02:16 GMT
Hi Peter,

I just tried the sample with the g 2.0.2 tomcat assembly, and it works 
fine for me.  I followed the instruction in the 
samples\jaxws-calculator\readme.txt.   Are you using the latest code?
I saw version 2.0 in my calculator module ID.

e:\gsamplestrunk\samples\jaxws-calculator>\gt202\bin\deploy.bat deploy 
jaxws-cal
culator-war\target\jaxws-calculator-war-2.0-SNAPSHOT.war
Using GERONIMO_BASE:   E:\gt202
Using GERONIMO_HOME:   E:\gt202
Using GERONIMO_TMPDIR: var\temp
Using JRE_HOME:        c:\progra~1\Java\jdk1.5.0_11\jre
     Deployed org.apache.geronimo.samples.jws/Calculator/2.0/car @
     /jaxws-calculator-war-2.0-SNAPSHOT

The 4 modules you listed below looks right, as axis is on by default. 
And Axis2 is also on by default with the tomcat assembly.

Lin

Peter Petersson wrote:
> Hi Lin (or Jacek)
> 
> I did never get time to test out the calculator sample the last time I 
> asked about it but now I am back with a fresh G v2.0.2 (tomcat/axis2 
> combo). I downloaded the source 
> https://svn.apache.org/repos/asf/geronimo/samples/trunk/samples/jaxws-calculator 
> I took some time trying to get the sample 
> http://cwiki.apache.org/GMOxDOC20/configure-jax-ws-engine.html up and 
> running on G v2.0.2 by modified the top level pom to pull in the 2.0.2 
> dependences (including skiping classpath in manifest as it was not 
> possible to deploy without that change) but the war wont start up due to 
> the following.
> 
> Caused by: org.apache.geronimo.kernel.config.InvalidConfigException: 
> Unknown start exception
>        at 
> org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:514)

> 
>        at 
> org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:187)

> 
>        at 
> org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:530)

> 
>        ... 45 more
> Caused by: org.apache.geronimo.gbean.InvalidConfigurationException: 
> Configuration org.apache.geronimo.samples.jws/Calculator/1.0/car failed 
> to start due to the following reasons:
>  The service 
> J2EEApplication=null,j2eeType=WebModule,name=org.apache.geronimo.samples.jws/Calculator/1.0/car

> did not start because Failure initializing web service containter
> 
> I have the following related system modules up and running
> 
> org.apache.geronimo.configs/axis2/2.0.2/car
> org.apache.geronimo.configs/axis2-deployer/2.0.2/car
> org.apache.geronimo.configs/axis/2.0.2/car  (don't know it it is needed)
> org.apache.geronimo.configs/axis-deployer/2.0.2/car (don't know it it is 
> needed)
> 
> I have obviously got something wrong here and I am new to web services 
> so I would appreciate if someone could take some time to 
> (port/build/branch) this sample for G v2.0.2 It would greatly help me 
> get started with web services and do it the "G way". Of course if there 
> are any other WS:s examples out there running on G  v2.0.2, a pointer to 
> it would be appreciated (I will also take a look at the test case:es in 
> the G build).
> 
> thanks
>   Peter Petersson
> 
> Lin Sun wrote:
>> Hi Peter,
>>
>> The sample out at the wiki is a bit old - we'll update the wiki after 
>> we finish updating the sample.  The latest sample is in trunk 
>> (https://svn.apache.org/repos/asf/geronimo/samples/trunk/samples/jaxws-calculator)

>>
>> and I in the middle of updating it now on my local machine to use the 
>> geronimo standard sample template and split the war and client into 
>> two modules (great mind in sync...:-) to simplify the sample.
>>
>> Give me a few days to work on this, but if you want to try the sample 
>> now, go ahead - it should work with axis2.   The CXF portion is a bit 
>> too old (last time someone tried it probably was M2 or M3).
>>
>> Thanks, Lin
>>
>> Peter Petersson wrote:
>>> Hi all
>>>
>>> Looking at the JAX-WS sample example in the G v2.0 documentation at 
>>> http://cwiki.apache.org/GMOxDOC20/simple-web-service-with-jax-ws.html 
>>> seeing its simplicity i got interested in trying it out and get 
>>> something to build from, unfortunately I run into multiple problems. 
>>> Running "mvn -Dmaven.test.skip=true install" and deploying with the 
>>> console deployer in G v2.0 M6 (and current SNAPSHOT build) I get the 
>>> following error (see problem 1 below). Realizing the problem has to 
>>> do with the manifest class path entries meant for the "test" client 
>>> application and not necessary for the web service per see I commented 
>>> out the manifest settings (see problem 2) and managed to deploy 
>>> without errors.
>>>
>>> Wanting to test the service out I uncommented the pom section again 
>>> (see problem 2) and re-build to get a working test client jar.
>>>
>>> Unfortunately when running " java -jar jaxws-calculator-1.0.jar 12 
>>> 35" to test things out with the client I get the following error (see 
>>> problem 3).
>>>
>>> Am I doing something wrong here?
>>> I would try to fix the example if I was more knowledgeable about 
>>> JAX-WS but maybe some one else could step in and and fix it (If there 
>>> are problem with it). If this example would work right out of the box 
>>> it would be a great example but in my IMHO to make it even better I 
>>> would suggest split the example build into to two maven build 
>>> modules, one that creates the service war and one that builds the 
>>> client jar.
>>>
>>> If this is a real problem I should probably create a JIRA but I would 
>>> like to get it confirmed first and maybe someone will come up with a 
>>> simple solution making the JIRA unnecessary.
>>>
>>> thanks
>>>     Peter Petersson
>>>
>>> Problem 1 (deploying the example):
>>> Manifest class path entries must be a valid jar file (JAVAEE 5 
>>> Section 8.2): 
>>> jarFile=/usr/local/geronimo-tomcat6-jee5-2.0-SNAPSHOT/repository/org/apache/geronimo/samples/jws/Calculator/1.0/cxf-tools-common-2.0-incubator-RC-SNAPSHOT.jar,

>>> path=cxf-tools-common-2.0-incubator-RC-SNAPSHOT.jar
>>> org.apache.geronimo.common.DeploymentException: Manifest class path 
>>> entries must be a valid jar file (JAVAEE 5 Section 8.2): 
>>> jarFile=/usr/local/geronimo-tomcat6-jee5-2.0-SNAPSHOT/repository/org/apache/geronimo/samples/jws/Calculator/1.0/cxf-tools-common-2.0-incubator-RC-SNAPSHOT.jar,

>>> path=cxf-tools-common-2.0-incubator-RC-SNAPSHOT.jar
>>>    at 
>>> org.apache.geronimo.deployment.DeploymentContext.getCompleteManifestClassPath(DeploymentContext.java:313)

>>>
>>>    at 
>>> org.apache.geronimo.web25.deployment.AbstractWebModuleBuilder.basicInitContext(AbstractWebModuleBuilder.java:330)

>>>
>>>    at 
>>> org.apache.geronimo.tomcat.deployment.TomcatModuleBuilder.initContext(TomcatModuleBuilder.java:289)

>>>
>>>    at 
>>> org.apache.geronimo.tomcat.deployment.TomcatModuleBuilder$$FastClassByCGLIB$$6f85ec2c.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:127)

>>>
>>>    at 
>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:830)

>>>
>>>    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$$bd02f8a9.initContext(<generated>)

>>>
>>>    at 
>>> org.apache.geronimo.j2ee.deployment.SwitchingModuleBuilder.initContext(SwitchingModuleBuilder.java:159)

>>>
>>>    at 
>>> org.apache.geronimo.j2ee.deployment.SwitchingModuleBuilder$$FastClassByCGLIB$$d0c31844.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:127)

>>>
>>>    at 
>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:830)

>>>
>>>    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$$bd02f8a9.initContext(<generated>)

>>>
>>>    at 
>>> org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:568)

>>>
>>>    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:127)

>>>
>>>    at 
>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:830)

>>>
>>>    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.CorbaGBeanNameSource$$EnhancerByCGLIB$$f43072be.buildConfiguration(<generated>)

>>>
>>>    at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:302)
>>>    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:127)

>>>
>>>    at 
>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:865)

>>>
>>>    at 
>>> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239) 
>>>
>>>    at 
>>> org.apache.geronimo.deployment.plugin.local.AbstractDeployCommand.doDeploy(AbstractDeployCommand.java:116)

>>>
>>>    at 
>>> org.apache.geronimo.deployment.plugin.local.DistributeCommand.run(DistributeCommand.java:61)

>>>
>>>    at java.lang.Thread.run(Thread.java:595)
>>> Caused by: java.util.zip.ZipException: No such file or directory
>>>    at java.util.zip.ZipFile.open(Native Method)
>>>    at java.util.zip.ZipFile.<init>(ZipFile.java:203)
>>>    at java.util.jar.JarFile.<init>(JarFile.java:132)
>>>    at java.util.jar.JarFile.<init>(JarFile.java:97)
>>>    at 
>>> org.apache.geronimo.deployment.DeploymentContext.getCompleteManifestClassPath(DeploymentContext.java:311)

>>>
>>>    ... 42 more
>>>
>>> Problem 2 (comenting out pom.xml section):
>>>                    <!--   <manifest>
>>>                           
>>> <mainClass>org.apache.geronimo.samples.jws.client.CalculatorClient</mainClass>

>>>
>>>                           <addClasspath>true</addClasspath>
>>>                       </manifest> -->
>>>
>>> Problem 3 (running the client):
>>> ......../calculator/target/jaxws-calculator-1.0/WEB-INF/lib$ java 
>>> -jar jaxws-calculator-1.0.jar 12 35
>>> 2007-jul-06 22:20:17 
>>> org.springframework.context.support.AbstractApplicationContext refresh
>>> INFO: Refreshing 
>>> org.apache.cxf.bus.spring.BusApplicationContext@aeffdf: display name 
>>> [org.apache.cxf.bus.spring.BusApplicationContext@aeffdf]; startup 
>>> date [Fri Jul 06 22:20:17 CEST 2007]; root of context hierarchy
>>> 2007-jul-06 22:20:17 org.apache.cxf.bus.spring.BusApplicationContext 
>>> getConfigResources
>>> INFO: Could not find the configuration file cxf.xml on the classpath.
>>> 2007-jul-06 22:20:17 
>>> org.springframework.context.support.AbstractApplicationContext refresh
>>> INFO: Bean factory for application context 
>>> [org.apache.cxf.bus.spring.BusApplicationContext@aeffdf]: 
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory@a352a5 
>>>
>>> 2007-jul-06 22:20:17 
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory 
>>> preInstantiateSingletons
>>> INFO: Pre-instantiating singletons in 
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory@a352a5:

>>> defining beans []; root of factory hierarchy
>>> 2007-jul-06 22:20:17 
>>> org.springframework.context.support.AbstractApplicationContext refresh
>>> INFO: Refreshing 
>>> org.apache.cxf.bus.spring.BusApplicationContext@aeffdf: display name 
>>> [org.apache.cxf.bus.spring.BusApplicationContext@aeffdf]; startup 
>>> date [Fri Jul 06 22:20:17 CEST 2007]; root of context hierarchy
>>> 2007-jul-06 22:20:17 
>>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry 
>>> destroySingletons
>>> INFO: Destroying singletons in 
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory@a352a5:

>>> defining beans []; root of factory hierarchy
>>> 2007-jul-06 22:20:17 org.apache.cxf.bus.spring.BusApplicationContext 
>>> getConfigResources
>>> INFO: Could not find the configuration file cxf.xml on the classpath.
>>> 2007-jul-06 22:20:17 
>>> org.springframework.beans.factory.xml.XmlBeanDefinitionReader 
>>> loadBeanDefinitions
>>> INFO: Loading XML bean definitions from class path resource 
>>> [META-INF/cxf/cxf.xml]
>>> 2007-jul-06 22:20:17 
>>> org.springframework.beans.factory.xml.XmlBeanDefinitionReader 
>>> loadBeanDefinitions
>>> INFO: Loading XML bean definitions from class path resource 
>>> [META-INF/cxf/cxf-extension-http.xml]
>>> 2007-jul-06 22:20:17 
>>> org.springframework.beans.factory.xml.XmlBeanDefinitionReader 
>>> loadBeanDefinitions
>>> INFO: Loading XML bean definitions from class path resource 
>>> [META-INF/cxf/cxf-extension-soap.xml]
>>> 2007-jul-06 22:20:17 
>>> org.springframework.beans.factory.xml.XmlBeanDefinitionReader 
>>> loadBeanDefinitions
>>> INFO: Loading XML bean definitions from class path resource 
>>> [META-INF/cxf/cxf-extension-xml.xml]
>>> 2007-jul-06 22:20:17 
>>> org.springframework.context.support.AbstractApplicationContext refresh
>>> INFO: Bean factory for application context 
>>> [org.apache.cxf.bus.spring.BusApplicationContext@aeffdf]: 
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory@139b78e

>>>
>>> 2007-jul-06 22:20:18 
>>> org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker

>>> postProcessAfterInitialization
>>> INFO: Bean 'org.apache.cxf.bus.spring.Jsr250BeanPostProcessor' is not 
>>> eligible for getting processed by all BeanPostProcessors (for 
>>> example: not eligible for auto-proxying)
>>> 2007-jul-06 22:20:18 
>>> org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker

>>> postProcessAfterInitialization
>>> INFO: Bean 'cxf' is not eligible for getting processed by all 
>>> BeanPostProcessors (for example: not eligible for auto-proxying)
>>> 2007-jul-06 22:20:18 
>>> org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker

>>> postProcessAfterInitialization
>>> INFO: Bean 'org.apache.cxf.bus.spring.BusExtensionPostProcessor' is 
>>> not eligible for getting processed by all BeanPostProcessors (for 
>>> example: not eligible for auto-proxying)
>>> 2007-jul-06 22:20:18 
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory 
>>> preInstantiateSingletons
>>> INFO: Pre-instantiating singletons in 
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory@139b78e:

>>> defining beans 
>>> [cxf,org.apache.cxf.bus.spring.Jsr250BeanPostProcessor,org.apache.cxf.bus.spring.BusExtensionPostProcessor,org.apache.cxf.resource.ResourceManager,org.apache.cxf.binding.BindingFactoryManager,org.apache.cxf.transport.DestinationFactoryManager,org.apache.cxf.transport.ConduitInitiatorManager,org.apache.cxf.wsdl.WSDLManager,org.apache.cxf.phase.PhaseManager,org.apache.cxf.workqueue.WorkQueueManager,org.apache.cxf.buslifecycle.BusLifeCycleManager,org.apache.cxf.endpoint.ServerRegistry,org.apache.cxf.endpoint.ServerLifeCycleManager,org.apache.cxf.transports.http.QueryHandlerRegistry,org.apache.cxf.endpoint.EndpointResolverRegistry,org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder,org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder,org.apache.cxf.binding.soap.SoapBindingFactory,org.apache.cxf.binding.soap.SoapTransportFactory,org.apache.cxf.binding.soap.customEditorConfigurer,org.apache.cxf.binding.xml.XMLBindingFactory];

>>> root of factory hierarchy
>>> Exception in thread "main" javax.xml.ws.WebServiceException: 
>>> org.apache.cxf.service.factory.ServiceConstructionException: Failed 
>>> to create service.
>>>        at org.apache.cxf.jaxws.ServiceImpl.<init>(ServiceImpl.java:101)
>>>        at 
>>> org.apache.cxf.jaxws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:55)

>>>
>>>        at javax.xml.ws.Service.<init>(Service.java:57)
>>>        at javax.xml.ws.Service.create(Service.java:302)
>>>        at 
>>> org.apache.geronimo.samples.jws.client.CalculatorClient.add(CalculatorClient.java:41)

>>>
>>>        at 
>>> org.apache.geronimo.samples.jws.client.CalculatorClient.main(CalculatorClient.java:33)

>>>
>>> Caused by: 
>>> org.apache.cxf.service.factory.ServiceConstructionException: Failed 
>>> to create service.
>>>        at 
>>> org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:68)

>>>
>>>        at 
>>> org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:74)

>>>
>>>        at 
>>> org.apache.cxf.jaxws.ServiceImpl.initializePorts(ServiceImpl.java:107)
>>>        at org.apache.cxf.jaxws.ServiceImpl.<init>(ServiceImpl.java:99)
>>>        ... 5 more
>>> Caused by: javax.wsdl.WSDLException: WSDLException: 
>>> faultCode=PARSER_ERROR: Problem parsing 
>>> 'http://localhost:8080/jaxws-calculator-1.0/CalculatorService.wsdl'.: 
>>> java.io.FileNotFoundException: 
>>> http://localhost:8080/jaxws-calculator-1.0/CalculatorService.wsdl
>>>        at com.ibm.wsdl.xml.WSDLReaderImpl.getDocument(Unknown Source)
>>>        at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
>>>        at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source)
>>>        at 
>>> org.apache.cxf.wsdl11.WSDLManagerImpl.loadDefinition(WSDLManagerImpl.java:177)

>>>
>>>        at 
>>> org.apache.cxf.wsdl11.WSDLManagerImpl.getDefinition(WSDLManagerImpl.java:123)

>>>
>>>        at 
>>> org.apache.cxf.wsdl11.WSDLServiceFactory.<init>(WSDLServiceFactory.java:66)

>>>
>>>        ... 8 more
>>> Caused by: java.io.FileNotFoundException: 
>>> http://localhost:8080/jaxws-calculator-1.0/CalculatorService.wsdl
>>>        at 
>>> sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1172)

>>>
>>>        at 
>>> com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:973)

>>>
>>>        at 
>>> com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(XMLVersionDetector.java:184)

>>>
>>>        at 
>>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:798)

>>>
>>>        at 
>>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)

>>>
>>>        at 
>>> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)

>>>
>>>        at 
>>> com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:250)

>>>
>>>        at 
>>> com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)

>>>
>>>        ... 14 more
>>>
>>>
>>>
>>>
>>
> 
> 
> 


Mime
View raw message