Java 如何从XMLSOAP模式创建响应POJO

Java 如何从XMLSOAP模式创建响应POJO,java,xml,soap,jaxb,Java,Xml,Soap,Jaxb,我的任务是创建API的请求和响应类。API与XML SOAP配合使用。我通过SOAP发送请求没有问题,但我找不到创建响应POJO的方法。谷歌搜索对我想要的东西没有多大帮助 下面是我从API获得的一个示例XML响应。我想知道的是,首先,如何生成xml的java类,然后如何解组该xml以创建该类的对象 <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/

我的任务是创建API的请求和响应类。API与XML SOAP配合使用。我通过SOAP发送请求没有问题,但我找不到创建响应POJO的方法。谷歌搜索对我想要的东西没有多大帮助

下面是我从API获得的一个示例XML响应。我想知道的是,首先,如何生成xml的java类,然后如何解组该xml以创建该类的对象

<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing">
<s:Header>
    <a:Action s:mustUnderstand="1">http://TekTravel/HotelBookingApi/IHotelService/HotelSearchResponse</a:Action>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <HotelSearchResponse xmlns="http://TekTravel/HotelBookingApi">
        <Status>
            <StatusCode>01</StatusCode>
            <Description>Successful: HotelSearch Successful</Description>
        </Status>
        <ResponseTime>31/05/2018 07:15:50</ResponseTime>
        <SessionId>String</SessionId>
        <NoOfRoomsRequested>1</NoOfRoomsRequested>
        <CityId>122727</CityId>
        <CheckInDate>31/07/2018 00:00:00</CheckInDate>
        <CheckOutDate>31/08/2018 00:00:00</CheckOutDate>
        <RoomGuests>
            <RoomGuest AdultCount="2" ChildCount="0" />
        </RoomGuests>
        <HotelResultList>
            <HotelResult>
                <ResultIndex>1</ResultIndex>
                <HotelInfo>
                    <HotelCode>1223616</HotelCode>
                    <HotelName>Holiday Inn Istanbul Airport</HotelName>
                    <HotelPicture>http://api.tbotechnology.in/imageresource.aspx?img=9eMP+0FIICgCIk6ZClzZH9Cs+1gwAq6BFWcc22yNLMF/UJIXMdxPdU6RmZuwTZuiHZTzqW9k4hFjD8j5qsCZ6ux+KKuGpw2ckqGcenpT20gdryjECrrh0A==</HotelPicture>
                    <HotelDescription>Property Location With a stay at Holiday Inn Istanbul Airport Hotel in Istanbul (Bagcilar), you&amp;apos;ll be close to Mall of Istanbul and Ataturk Olympic Stadium </HotelDescription>
                    <Latitude>41.05856</Latitude>
                    <Longitude>28.81395</Longitude>
                    <HotelAddress>Mahmutbey Mahallesi Tasocagi Yolu Caddesi 35 </HotelAddress>
                    <Rating>FiveStar</Rating>
                    <HotelPromotion />
                    <TripAdvisorRating>3.5</TripAdvisorRating>
                    <TripAdvisorReviewURL>http://www.tripadvisor.com/Hotel_Review-g293974-d860088-Reviews-m19454-Holiday_Inn_Istanbul_Airport_</TripAdvisorReviewURL>
                    <TagIds>126</TagIds>
                </HotelInfo>
                <MinHotelPrice TotalPrice="3515.40" Currency="USD" B2CRates="false" OriginalPrice="3515.40" />
                <IsPkgProperty>false</IsPkgProperty>
                <IsPackageRate>false</IsPackageRate>
                <MappedHotel>true</MappedHotel>
            </HotelResult>
        </HotelResultList>
    </HotelSearchResponse>
</s:Body>

http://TekTravel/HotelBookingApi/IHotelService/HotelSearchResponse
01
成功:HotelSearch成功
31/05/2018 07:15:50
一串
1.
122727
31/07/2018 00:00:00
31/08/2018 00:00:00
1.
1223616
伊斯坦布尔机场假日酒店
http://api.tbotechnology.in/imageresource.aspx?img=9eMP+0FIICGCIK6ZCLZH9CS+1GWAQ6BFWC22YNLMF/UJIXMDXPDU6RMZUZTZQW9K4HFJD8J5QSCZ6UX+KKuGpw2ckqGcenpT20gdryjECrrh0A==
酒店位于伊斯坦布尔机场假日酒店(Bagcillar),您和;载脂蛋白;我们将靠近伊斯坦布尔购物中心和阿塔图克奥林匹克体育场
41.05856
28.81395
Mahmutbey Mahallesi Tasocagi Yolu Caddesi 35
菲斯塔
3.5
http://www.tripadvisor.com/Hotel_Review-g293974-d860088-Reviews-m19454-Holiday_Inn_Istanbul_Airport_
126
假的
假的
真的

POJO通常是从WSDL创建的,而不是从示例SOAPMessage,发布您的WSDL。您需要WSDL文件,然后在APACHE CXF或AXIS 2()Google的帮助下生成存根或框架java类,以帮助: