Domanda

I am a newbie to java web services. I prepared a .aar file and deploying it in tomcat5.5.35 with axis2.

Now while running the web service I found a weird error

org.apache.axis2.dataretrieval.DataRetrievalException: Failed to load from file, META-INF/ServiceData.xml

I cannot figure out the reason behind it. My .aar file contains a services.xml listing the services. But why axis is trying to load that ServiceData.xml file. I am using jdk1.6 and tomcat5.5 with axis2.

The complete error log is given below

org.apache.axis2.dataretrieval.DataRetrievalException: Failed to load from file, META-INF/ServiceData.xml
    at org.apache.axis2.dataretrieval.DataRetrievalUtil.buildOM(DataRetrievalUtil.java:64)
    at org.apache.axis2.dataretrieval.AxisDataLocatorImpl.loadServiceData(AxisDataLocatorImpl.java:103)
    at org.apache.axis2.description.AxisService.getDefaultDataLocator(AxisService.java:2281)
    at org.apache.axis2.description.AxisService.getDataLocator(AxisService.java:2265)
    at org.apache.axis2.description.AxisService.getData(AxisService.java:2184)
    at org.apache.axis2.description.AxisService.getWSDL(AxisService.java:1139)
    at org.apache.axis2.description.AxisService.printWSDL(AxisService.java:1077)
    at org.apache.axis2.transport.http.ListingAgent.processListService(ListingAgent.java:280)
    at org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:229)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:843)
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:679)
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1303)
    at java.lang.Thread.run(Thread.java:662)
Caused by: javax.xml.stream.XMLStreamException: File does not exist in the Service Repository! File=META-INF/ServiceData.xml
    at org.apache.axis2.dataretrieval.DataRetrievalUtil.getInputStream(DataRetrievalUtil.java:103)
    at org.apache.axis2.dataretrieval.DataRetrievalUtil.buildOM(DataRetrievalUtil.java:60)
    ... 22 more
16:20:23,031 DEBUG StAXUtils:263 - XMLStreamReader is org.apache.axiom.util.stax.dialect.WoodstoxStreamReaderWrapper
16:20:23,046 DEBUG StAXUtils:263 - XMLStreamReader is org.apache.axiom.util.stax.dialect.WoodstoxStreamReaderWrapper
16:20:23,046 DEBUG StAXUtils:680 - About to create XMLOutputFactory implementation with classloader=WebappClassLoader
  delegate: false
  repositories:
    /WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader@4aa0ce

If anybody can help me to solve this problem it would be great.

È stato utile?

Soluzione

Axis2 checks the service metadata file "avax.xml.stream.XMLStreamException: File does not exist in the Service Repository! File=META-INF/ServiceData.xml"..Is your service .aar folder structure is right?

In your *.AAr file, you should have META_INF file and your implementations..

test.aar|-----META_INF
        |
        |......folder contains classes  
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top