I'm using JBOSS 5.1 and I am developing a Web Service that uses the BOE SDK JAR files. After I add the specific jar files to my project I attempt to deploy the Web Service and it gives me this specific error:
Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 3 counts of IllegalAnnotationExceptions
com.crystaldecisions.sdk.framework.IEnterpriseSession is an interface, and JAXB can't handle interfaces.
this problem is related to the following location:
at com.crystaldecisions.sdk.framework.IEnterpriseSession
at private com.crystaldecisions.sdk.framework.IEnterpriseSession login.jaxws.LogInResponse._return
at login.jaxws.LogInResponse
com.crystaldecisions.sdk.framework.IEnterpriseSession does not have a no-arg default constructor.
this problem is related to the following location:
at com.crystaldecisions.sdk.framework.IEnterpriseSession
at private com.crystaldecisions.sdk.framework.IEnterpriseSession login.jaxws.LogInResponse._return
at login.jaxws.LogInResponse
java.util.Locale does not have a no-arg default constructor.
this problem is related to the following location:
at java.util.Locale
at public abstract java.util.Locale com.crystaldecisions.sdk.framework.IEnterpriseSession.getLocale() throws com.crystaldecisions.sdk.exception.SDKException
at com.crystaldecisions.sdk.framework.IEnterpriseSession
at private com.crystaldecisions.sdk.framework.IEnterpriseSession login.jaxws.LogInResponse._return
at login.jaxws.LogInResponse
at com.sun.xml.bind.v2.runtime.IllegalAnnotationsException$Builder.check(IllegalAnnotationsException.java:102)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:472)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:302)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1136)
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:154)
at com.sun.xml.bind.api.JAXBRIContext.newInstance(JAXBRIContext.java:106)
at org.jboss.ws.core.jaxws.CustomizableJAXBContextFactory.createContext(CustomizableJAXBContextFactory.java:127)
... 34 more
These errors are kind of scary because it looks like I can't use the classes in these jar files, but something tells me there has to be some way to get around it. I'm guessing that I might not have annotated my code the specific way it needs to be.
here is my code:
@WebService(name = "reportengine.login")
@SOAPBinding(style = SOAPBinding.Style.DOCUMENT,
use = SOAPBinding.Use.LITERAL,
parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)
public class Login {
public IEnterpriseSession session;
public IInfoStore iStore;
public Login(){}
@WebMethod(operationName = "Login")
public IEnterpriseSession LogIn(@WebParam(name = "UserName") String u,
@WebParam(name = "Password") String pwd,
@WebParam(name = "CMS") String c,
@WebParam(name = "Authorization") String auth){
.....
}
}
Any help would be greatly appreciated.