[ http://issues.apache.org/jira/browse/BEEHIVE-839?page=all ]
daryoush mehrtash updated BEEHIVE-839:
--------------------------------------
Attachment: wsmdiff.txt
server.zip
client.zip
This patch applies to Beehive 843, and 839; it contains the fixes that were
explained in:
http://mail-archives.apache.org/mod_mbox/incubator-beehive-dev/200508.mbox/[EMAIL
PROTECTED]
The same document also is in the WIKI at:
http://wiki.apache.org/beehive/XmnBeansInWsm
Few Notes about the Patch….
There are two XMLBeans bugs that we need to have fixed before this work is
completed. The bugs are:
http://issues.apache.org/jira/browse/XMLBEANS-189
http://issues.apache.org/jira/browse/XMLBEANS-190
Due to these bugs the WSDL is not accurate. Other than the WSDL the client and
server side seems to be working fine.
I am submitting a diff for the patch and two zip file to demonstrate the fix.
The zip files are the server side project that uses XMLBeans document and
anonymous types and the client application that is the Axis client side test
case to validate the changes.
The patch is to Revision: 231554 of the WSM code. The patch is essentially the
diff of the affected files, it also contains a new file:
WSMServiceDescriptor.java.
To run the client and the server you should do the following:
a) apply the patch to WSM
b) build a new distribution for beehive
c) Set the beehive home to be the root of the distribution
d) unzip the server side
e) build the project
a. cd WEB-INF/src
b. run ant
f) deploy the project to xmlbeantestWS in your servlet container
g) startup the servlet container
h) Afterward you should be able to go to
http://localhost:8080/xmlbeantestWS and view be able to get the WSDL for the
Bare and Wrapped test cases
i) Unzip the client side
j) Build the client side, and run the test case
a. Run ant (this would build and run the unit test for the wrapped
service)
NOTES:
• There are 5 tests in the client side test case. Of the five only 4
should run, at the end you should get
[junit] Tests run: 5, Failures: 0, Errors: 1, Time elapsed: 13.429 sec
The one error is due to the XMLBean bugs that I listed above.
• In a standard client side test case the client side should be generated
from the real WSDL of the server. To account for the XMLBeans issues, the
client side code includes an edited version of the WSDL. The WSDL is used to
generate the client side types and Axis artifacts for the test case. Once
the XMLBean bugs are fixed the build file should be modified to get the real
WSDL from the service.
TBD:
This code is submitted as prototype; if it is to be integrated with WSM the
unit test case that is included here should be expanded and incorporated in the
WSM DRT process.
> XMLBean genearted objects for schema elements are not handled in JWS.
> ---------------------------------------------------------------------
>
> Key: BEEHIVE-839
> URL: http://issues.apache.org/jira/browse/BEEHIVE-839
> Project: Beehive
> Type: Bug
> Versions: TBD
> Reporter: daryoush mehrtash
> Assignee: daryoush mehrtash
> Fix For: TBD
> Attachments: client.zip, server.zip, wsmdiff.txt
>
> If a JWS mathod uses a xmlbeans generated type based on a global element in
> the schema (xxxDocument object) the type mapping the following exception is
> thrown:
> Note: the code works fine if types are used in the interface, but not
> documents.
> - Error in type registeration
> javax.xml.rpc.JAXRPCException: Null qualified name specified.
> at
> org.apache.axis.encoding.TypeMappingImpl.internalRegister(TypeMappingImpl.java:236)
> at
> org.apache.axis.encoding.TypeMappingImpl.register(TypeMappingImpl.java:218)
> at
> org.apache.axis.encoding.TypeMappingDelegate.register(TypeMappingDelegate.java:73)
> at
> org.apache.beehive.wsm.axis.AxisHook.configureTypeMapping(AxisHook.java:355)
> at
> org.apache.beehive.wsm.axis.AxisHook.createServiceDesc(AxisHook.java:155)
> at
> org.apache.beehive.wsm.axis.handlers.AnnotatedWebServiceDeploymentHandler.createSOAPService(AnnotatedWebServiceDeploymentHandler.java:158)
> at
> org.apache.beehive.wsm.axis.handlers.AnnotatedWebServiceDeploymentHandler.getSOAPService(AnnotatedWebServiceDeploymentHandler.java:117)
> at
> org.apache.beehive.wsm.axis.handlers.AnnotatedWebServiceDeploymentHandler.invoke(AnnotatedWebServiceDeploymentHandler.java:76)
> at
> org.apache.beehive.wsm.axis.handlers.AnnotatedWebServiceDeploymentHandler.generateWSDL(AnnotatedWebServiceDeploymentHandler.java:102)
> at
> org.apache.axis.strategies.WSDLGenStrategy.visit(WSDLGenStrategy.java:33)
> at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
> at org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:104)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira