2012-04-11 12 views
3

ためのJAXB注釈付きクラスの使用:私のWebサービスがで呼び出すことができ、この構造で私はこのような作業をWebサービスを持ってJAXWSサービス

public class Barkod { 
    private String barkodNo; 
// there are constructors and getters, setters etc. nothing fancy // 
} 

:として

@WebService(serviceName = "TempService") 
public class TempService { 
    @WebMethod(operationName = "addBarkod") 
    public Boolean addBarkod(@WebParam(name = "barkod") Barkod barkod) { 
    System.out.println(barkod.getBarkodNo()); 
    } 
} 

とBarkodクラスを問題の原因は何ですか?

@XmlType(name="barkod") 
@XmlRootElement(name="barkod") 
@XmlAccessorType(XmlAccessType.FIELD) 

私は3.1をGlassFishのために、これを展開することができますし、あるsoapUIは、新しい構造を持つ新しいクライアント要求を生成しますが、それは「barkod.getBarkodNoを(行うために来るとき:問題は、私のようなJAXB注釈と私のモデルクラスに注釈をしたいときです); " addBarkodオペレーションでは、NullPointerExceptionをスローします。私は、Webサービスに送信されたXMLが適切なBarkodオブジェクトを作成しないように見えます。

私はWebサービスクラスなどと関係がありますか?

+0

あなたは例外を投稿できますか? –

+0

私はそれを貼り付けます:https://gist.github.com/2359811 – zekzekus

+0

NPEを引き起こすために 'TempService.java:54'には何がありますか?私のTempServiceクラスの –

答えて

0

私は、soapUIがWSDLからリクエストを自動的に生成するため、問題が発生したと思います。名前空間節なしで@XmlRootElementでクラスに注釈を付けると、指定されたXMLをマップして、オブジェクトにすることができません。私は@XmlRootElemen(namespace = "")を割り当てて、私の問題は解消します。

とにかく感謝します。

関連する問題