使用java将原始xml字符串直接发送到soap服务

时间:2011-09-05 07:19:49

标签: java soap

是否可以将xml字符串直接发送到soap服务器而不是为它生成java类?

我们想发送这个xml:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://www.timeedit.se/timeedit3/version2">
<soapenv:Header/>
<soapenv:Body>
  <ver:findObjects>
     <!--Optional:-->
     <ver:login>
        <username>xxxxxxxx</username>
        <password>xxxxxxxx</password>
        <applicationkey>xxxxxxxxx</applicationkey>
     </ver:login>
     <!--Optional:-->
     <ver:type>t_hel_programtillfälle</ver:type>
     <!--Optional:-->
     <ver:exactsearchfields>
        <!--Zero or more repetitions:-->
        <field>
           <!--Optional:-->
           <extid>f_start_slut_termin</extid>
           <!--Zero or more repetitions:-->
           <value>h11</value>
        </field>
        <field>
           <!--Optional:-->
           <extid>f_start_slut_termin</extid>
           <!--Zero or more repetitions:-->
           <value>v14</value>
        </field>
        <field>
           <!--Optional:-->
           <extid>f_anmälningskod</extid>
           <!--Zero or more repetitions:-->
           <value>10001</value>
        </field>
    </ver:exactsearchfields>
     <!--Optional:-->
     <ver:generalsearchstring></ver:generalsearchstring>
     <!--Optional:-->
     <ver:active>true</ver:active>
     <!--Optional:-->
     <ver:reserved>true</ver:reserved>
     <!--Optional:-->
     <ver:sortorder>?</ver:sortorder>
     <ver:beginindex>0</ver:beginindex>
     <!--Optional:-->
     <ver:numberofobjects>20</ver:numberofobjects>
  </ver:findObjects>

2 个答案:

答案 0 :(得分:2)

我使用Spring Web Service(http://static.springsource.org/spring-ws/sites/2.0/)做了类似的事情。在Spring @Endpoint方法中,您可以使用xml String,但将其转换为有效类型之一,例如javax.xml.transform.Source(参见http://static.springsource.org/spring-ws/sites/2.0/reference/html/server.html#d4e1220)。

答案 1 :(得分:2)