我的web服务使用方法来抛出我的自定义exeption。
@WebMethod void someMethod(...) throws MyException
MyException
类使用@ApplicationException
@ApplicationException
class public MyException extends Exception {...}
我使用maven
,JDK 1.6
和jaxws-maven-plugin
构建我的项目来生成WSDL,一切运行良好。
但现在我想对JDK 1.7
做同样的事情,现在我得到错误
Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
java.lang.StackTraceElement does not have a no-arg default constructor.
this problem is related to the following location:
at java.lang.StackTraceElement
at public java.lang.StackTraceElement[] java.lang.Throwable.getStackTrace()
at java.lang.Throwable
at private java.lang.Throwable[] com.MyPackage.MyExceptionBean.suppressed
at com.MyPackage.MyExceptionBean
有什么想法吗?
与JDK 1.6类不同的是,MyExceptionBean的生成类似于
public class MyExceptionBean {
private String message;
但是使用JDK 1.7
public class MyExceptionBean {
private String message;
private Throwable[] suppressed;
jaxws-maven-plugin
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>1.10</version>
答案 0 :(得分:2)
存在jaxws-maven-plugin
和java 7
的问题: - (
issue tracker
<groupId>org.jvnet.jax-ws-commons</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>2.2</version>