2013-04-23 182 views
1

我使用JBoss 5.1.0GA和JAXWS-API 2.1.1和Maven和我的web服务是JAXWS运行时异常

@WebMethod 
public GenericResponse getExternalSystems() throws java.rmi.RemoteException{ 
    return engineExternal.getExternalSystems(); 
} 

的运行时异常,我得到部署如下:

Caused by: org.jboss.ws.WSException: arg0 is not a valid property on class ClassName 
    at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getElementPropertyAccessor(JAXBContextImpl.java:971) 
    at org.jboss.ws.metadata.accessor.JAXBAccessorFactory.create(JAXBAccessorFactory.java:49) 
    at org.jboss.ws.metadata.umdm.EndpointMetaData.createAccessor(EndpointMetaData.java:763) 
    at org.jboss.ws.metadata.umdm.EndpointMetaData.eagerInitializeAccessors(EndpointMetaData.java:697) 
    at org.jboss.ws.metadata.umdm.EndpointMetaData.initializeInternal(EndpointMetaData.java:569) 
    at org.jboss.ws.metadata.umdm.EndpointMetaData.eagerInitialize(EndpointMetaData.java:557) 
    at org.jboss.ws.metadata.umdm.ServiceMetaData.eagerInitialize(ServiceMetaData.java:433) 
    at org.jboss.ws.metadata.umdm.UnifiedMetaData.eagerInitialize(UnifiedMetaData.java:199) 
    at org.jboss.wsf.stack.jbws.EagerInitializeDeploymentAspect.start(EagerInitializeDeploymentAspect.java:48) 
    at org.jboss.webservices.integration.deployers.WSDeploymentAspectDeployer.internalDeploy(WSDeploymentAspectDeployer.java:107) 
    at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50) 
    at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171) 
    ... 30 more 

我已经发现了一些解决方案,使用Ant任务:

http://billytee.wordpress.com/2009/09/03/jboss-jax-ws-is-not-a-valid-property-on-class/

http://www.javalinux.it/wordpress/2009/03/16/ant-171-and-package-infojava-compilation-problem-of-jax-ws-generated-classes/

但我使用maven,所以我不能使用这些解决方案。 我能做什么?

回答

1

当在Web服务实现中未正确注释参数时会发生此错误。

确保所有参数都有注释。 例如: @WebParam(name =“param_name”)

其中,param_name表示WSDL中存在的元素的名称。

+0

问题是发生错误的方法根本没有参数。这是最奇怪的事情。 – 2013-04-23 21:15:31