Hello,
I am using Axis2 and its java2wsdl to generate wsdl file based on java
class.
The public methods in our service class use Enum type as complextype.
In Netbeans, when I test it (right-click and select "test operation in
browser"), Glassfish server generated the following error:
信息: [INFO] Deploying Web service: CAR2ServiceLib.aar -
file:/C:/Users/sam/.netbeans/7.0rc2/config/GF3/domain1/applications/axis2/WEB-INF/services/CAR2ServiceLib.aar
信息: [ERROR] Exception occurred while trying to invoke service method
continueDialogue
org.apache.axis2.AxisFault: car2.enumeration.CAR2DialogueTypeEnum
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
at
org.apache.axis2.engine.DefaultObjectSupplier.getObject(DefaultObjectSupplier.java:47)
at
org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:421)
at
org.apache.axis2.databinding.utils.BeanUtil.processObject(BeanUtil.java:827)
at
org.apache.axis2.databinding.utils.BeanUtil.ProcessElement(BeanUtil.java:746)
at
org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:655)
at
org.apache.axis2.rpc.receivers.RPCUtil.processRequest(RPCUtil.java:153)
at
org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:206)
at
org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
at
org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
at
org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181)
at
org.apache.axis2.transport.http.util.RESTUtil.invokeAxisEngine(RESTUtil.java:144)
at
org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:139)
at
org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:837)
at
org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:273)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170)
at
com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
at
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.InstantiationException:
car2.enumeration.CAR2DialogueTypeEnum
at java.lang.Class.newInstance0(Class.java:340)
at java.lang.Class.newInstance(Class.java:308)
at
org.apache.axis2.engine.DefaultObjectSupplier.getObject(DefaultObjectSupplier.java:42)
... 41 more
Here is my CAR2DialogueTypeEnum.java class:
package car2.enumeration;
import car2.base.IBaseEnum;
/**
* Dialogue Type
* @author sam
*/
public enum CAR2DialogueTypeEnum implements IBaseEnum {
AC("AC","AC"),
PORO("PORO", "PORO");
private String code = "";
private String description = "";
CAR2DialogueTypeEnum(String code, String description) {
this.code = code;
this.description = description;
}
/**
* (non-Javadoc)
* @see enums.IBaseEnum#getCode()
*/
public String getCode(){
return code;
}
/**
* @return a string represent Status code.
*/
public String getDescription(){
return description;
}
/**
* Set description to registration.
* @param description
*/
public void setDescription(String description){
this.description = description;
}
/**
* Return Dialogue Type code base on string.
* @param code - a string of status code.
* @return status enum code
*/
public static CAR2DialogueTypeEnum fromCode(String code){
for(CAR2DialogueTypeEnum status : values()){
if(status.getCode().equals(code)){
return status;
}
}
return null;
}
}
I am wondering:
1. I have deployed axis2.war to Glassfish 3.1, do I need to re-deploy
Axis2.war file every time when rebuild my web service file? My web service
file is a .jar file.
2. what path should I use for "Target Location for Axis2 .aar files" when I
define it in Nebeans (Tools->option) page? Currently I am using
C:\Users\sam\.netbeans\7.0rc2\config\GF3\domain1\applications\axis2
Here is the path to *.aar file:
sam@sam-PC /cygdrive/c/Users/sam/.netbeans/7.0rc2
$ find . -name "*.aar"
./config/GF3/domain1/applications/axis2/WEB-INF/services/CAR2ServiceLib.aar
./config/GF3/domain1/applications/axis2/WEB-INF/services/version.aar
sam@sam-PC /cygdrive/c/Users/sam/.netbeans/7.0rc2
$ pwd
/cygdrive/c/Users/sam/.netbeans/7.0rc2
Thanks for any suggestion and your answer would be very appreicated
Thanks
Sam
--
View this message in context:
http://old.nabble.com/Enum-type-as-method-parameter-with-Axis2-tp32182695p32182695.html
Sent from the Axis - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]