[GLASSFISH-1190] WSGen fed incorrect classpath info by deployer Created: 23/Sep/06  Updated: 03/Nov/06  Resolved: 03/Nov/06

Status: Resolved
Project: glassfish
Component/s: web_services
Affects Version/s: 9.1pe
Fix Version/s: 9.1pe

Type: Bug Priority: Blocker
Reporter: sbalmos Assignee: vijaysr
Resolution: Duplicate Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: File TestApp.ear    
Issuezilla Id: 1,190

 Description   

When wsgen is called by the Glassfish deployer, it is apparently not being fed
the complete classpath of all component JARs in an EAR. Further, the deployer
that calls wsgen does not seem to respect the component JAR's manifest classpath.

Take an EAR with the following structure:

test.ear
core.jar
soap.jar

Because soap.jar and core.jar are components of an EAR, they should be able to
see each others' classes, being in the same application classpath. But when
wsgen is called on soap.jar, and soap.jar somehow depends on core.jar classes
(in my case, the SEI-implementing class has an @Interceptors entry that
references an interceptor class in core.jar), wsgen fails with a
TypeNotPresentExceptionProxy exception. This also occurs even if core.jar is
explicitly listed in soap.jar's manifest classpath.

This must be an issue, as far as I can tell, with how the Glassfish deployer
feeds wsgen classpath information. Running the standalone wsgen utility in
Glassfish's bin directory correctly processes the JARs, both in the case where
the two JARs are manually listed in wsgen's classpath, and when only soap.jar is
listed in wsgen's classpath, and soap.jar references core.jar in the manifest
classpath.



 Comments   
Comment by sbalmos [ 23/Sep/06 ]

Created an attachment (id=455)
Test Case EAR

Comment by sbalmos [ 23/Sep/06 ]

Stack trace

[#|2006-09-23T21:19:16.109-0400|SEVERE|sun-appserver-pe9.1|javax.enterprise.system.tools.deployment|_ThreadID=13;_ThreadName=Thread-27;_RequestID=62400cc5-15ab-4aba-befa-e0afe3e39406;|Exception
occured in J2EEC Phase
com.sun.enterprise.deployment.backend.IASDeploymentException:
sun.reflect.annotation.TypeNotPresentExceptionProxy
at
sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:653)
at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:460)
at
sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
at
sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
at
sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
at
sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
at java.lang.Class.initAnnotationsIfNecessary(Class.java:3031)
at java.lang.Class.getAnnotation(Class.java:2989)
at com.sun.xml.ws.api.BindingID.parse(BindingID.java:286)
at com.sun.tools.ws.wscompile.CompileTool.isValidWSGenClass(CompileTool.java:489)
at com.sun.tools.ws.wscompile.CompileTool.parseArguments(CompileTool.java:446)
at com.sun.tools.ws.util.ToolBase.run(ToolBase.java:51)
at
com.sun.tools.ws.util.WSToolsObjectFactoryImpl.wsgen(WSToolsObjectFactoryImpl.java:44)
at com.sun.enterprise.webservice.WsUtil.runWsGen(WsUtil.java:1821)
at com.sun.enterprise.webservice.WsUtil.genWSInfo(WsUtil.java:2117)
at
com.sun.enterprise.deployment.backend.AppDeployerBase.loadDescriptors(AppDeployerBase.java:328)
at
com.sun.enterprise.deployment.backend.AppDeployer.explodeArchive(AppDeployer.java:332)
at com.sun.enterprise.deployment.backend.AppDeployer.deploy(AppDeployer.java:182)
at
com.sun.enterprise.deployment.backend.AppDeployer.doRequestFinish(AppDeployer.java:129)
at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:171)
at
com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:95)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:871)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:266)
at
com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:739)
at com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:174)
at com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:210)

#]
Comment by Hong Zhang [ 24/Sep/06 ]

assign to vijay for initial investigation

Comment by Sanjeeb Sahoo [ 28/Sep/06 ]

Is this a duplicate of or related to
https://glassfish.dev.java.net/issues/show_bug.cgi?id=474

– Sahoo

Comment by sbalmos [ 29/Sep/06 ]

Looks like it's a good chance it is related. And reading through that diff, I
don't see any mention of adding other EAR-level module JARs to the classpath.

Comment by gfbugbridge [ 03/Oct/06 ]

<BT6477826>

Comment by goeh [ 30/Oct/06 ]
      • Issue 1190 has been confirmed by votes. ***
Comment by gfbugbridge [ 31/Oct/06 ]

<BT6488330>

Comment by vijaysr [ 01/Nov/06 ]

This is a duplicate of issue #469

      • This issue has been marked as a duplicate of 469 ***
Comment by gfbugbridge [ 02/Nov/06 ]

<BT6489385>

Comment by gfbugbridge [ 03/Nov/06 ]

<BT6489852>

Generated at Fri Mar 27 22:58:49 UTC 2015 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.