Java 1.7的@ApplicationException

时间:2012-09-13 09:46:01

标签: java java-ee maven migration

我的web服务使用方法来抛出我的自定义exeption。

@WebMethod void someMethod(...) throws MyException   

MyException类使用@ApplicationException

进行注释
@ApplicationException  
class public MyException extends Exception {...}   

我使用mavenJDK 1.6jaxws-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>

1 个答案:

答案 0 :(得分:2)

存在jaxws-maven-pluginjava 7的问题: - (
issue tracker

<2.2>版本2.2运行良好

<groupId>org.jvnet.jax-ws-commons</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>2.2</version>