2017-10-24 8 views
0

私はオブジェクトのリストを持つSOAPリクエストを持っています。オブジェクトはjavaオブジェクトフィールドを持ちます。Java Map <String、Object>をWebServiceに渡します。

Java WebService実装のメソッドでリクエストを受け取ると、オブジェクトフィールドのすべての値が、元のオブジェクトではなく「com.sun.org.apache.xerces.internal.dom.ElementNSImpl」のインスタンスになりますクラス。

どのように私はすべての値の元のJavaクラスを失うことなくWebサービスにJavaオブジェクトを渡すことができますか?

クラス:

import java.io.Serializable; 
import java.util.HashMap; 
import java.util.List; 

import javax.xml.bind.annotation.XmlTransient; 

public class Request implements Serializable { 
    /** 
    * 
    */ 
    private static final long serialVersionUID = 1358291145144128010L; 

    private List<externalField> externalFields; 

    public Request(){} 

    public void setExternalFields(List<externalField> camposFFCCExternal) { 
     this.camposFFCCExternal = camposFFCCExternal; 
    } 

    public List<externalField> getExternalFields() { 
     return camposFFCCExternal; 
    } 
} 

externalFieldクラス:

import java.io.Serializable; 

public class externalField implements Serializable { 

    /** 
    * 
    */ 
    private static final long serialVersionUID = 8248866248138301848L; 
    private String key; 
    private Object value; 

    public void setClave(String key) { 
     this.key = key; 
    } 
    public String getClave() { 
     return key; 
    } 
    public void setValor(Object value) { 
     this.value = value; 
    } 
    public Object getValor() { 
     return value; 
    } 

} 
+0

jaxbクラスはありますか?はいの場合はマップを含むクラスを投稿できますか? – Sorontur

+0

私はjaxb注釈クラスを持っていません。私はJavaクラスを追加し、質問を再フォーマットしました。ありがとう。 – Ildelian

答えて

0

私はあなたが可能であり、どのようなタイプのJAXBを告げずにこれを行うことはできませんと思います。 How to create java object from 'anyType' returned from service using JAXB?

または可能なオブジェクトのセットが知られている場合は、タイプの選択を定義しようとすることができます:

http://blog.bdoughan.com/2010/10/jaxb-and-xsd-choice-xmlelements.html

希望をあなたはXMLシリアル化への影響力を持っている場合は、anyType型でこれを行うことができますこれはあなたに移動するためのいくつかのアイデアを提供します。

関連する問題