Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jax WS WebService操作,带有两个参数,调用时出错_Java_Web Services_Jax Ws - Fatal编程技术网

Java Jax WS WebService操作,带有两个参数,调用时出错

Java Jax WS WebService操作,带有两个参数,调用时出错,java,web-services,jax-ws,Java,Web Services,Jax Ws,我有一个jax-ws-webservice类,其中一个操作有两个web参数。 我试图向它发送请求,但它抛出了一个异常,预期的JAXB元素没有收到,我正在使用SOAP UI发送请求 Webservice类 @MTOM @WebService(endpointInterface = "com.carecentrix.service.ClaimService") public class ClaimServiceImpl implements ClaimService {

我有一个jax-ws-webservice类,其中一个操作有两个web参数。 我试图向它发送请求,但它抛出了一个异常,预期的JAXB元素没有收到,我正在使用SOAP UI发送请求

Webservice类

    @MTOM
    @WebService(endpointInterface = "com.carecentrix.service.ClaimService")
    public class ClaimServiceImpl implements ClaimService {

        @Resource
        public WebServiceContext context;

        private static Map<String, Object> dataMap = new HashMap<String, Object>();

        public String saveClaim(CCXClaim claim, CCXAttachment ccxAttachment) {
            String claimId = String.valueOf(dataMap.size()+1);
            if (!dataMap.containsKey(claimId)) {
                claim.getClaim().getHeaderInfo().get(0).getClaims().setClaimId(Long.valueOf(claimId));
                dataMap.put(claimId, claim);
            }
            System.out.println("claim object AppTransID" + dataMap);

            return claimId;
        }
    }
@MTOM
@WebService(endpointInterface=“com.careecentrix.service.ClaimService”)
公共类ClaimServiceImpl实现ClaimService{
@资源
公共WebServiceContext上下文;
私有静态映射dataMap=newhashmap();
公共字符串saveClaim(CCXClaim claim,CCXAttachment,CCXAttachment){
String claimId=String.valueOf(dataMap.size()+1);
如果(!dataMap.containsKey(claimId)){
claim.getClaim().getHeaderInfo().get(0.getClaims().setClaimId(Long.valueOf(claimId));
dataMap.put(claimId,claim);
}
System.out.println(“索赔对象AppTransID”+数据映射);
返回请求;
}
}
SOAP UI请求

    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.carecentrix.com/" xmlns:cla="http://www.carecentrix.com/claim" xmlns:cla1="http://www.carecentrix.com/claimattachment">
       <soapenv:Header/>
       <soapenv:Body>
          <ser:saveClaim>
             <!--Optional:-->

             <cla:CCXClaim schemaVersion="1.0">
                <cla:Claim>
                   <cla:AppTransID>12233</cla:AppTransID>
                   <cla:ClaimType>I</cla:ClaimType>

                   <cla:CreatedDate>2013-05-07</cla:CreatedDate>
                   <cla:CreatedBy>rrchapp</cla:CreatedBy>
                   <cla:CreatedByProcess>rrchapp</cla:CreatedByProcess>

                   <cla:HeaderInfo>
                      <cla:Claims>

                         <cla:ClaimHeaderId>1234444</cla:ClaimHeaderId>
                         <!--Optional:-->
                         <cla:ClaimSubmitionId>1</cla:ClaimSubmitionId>
                         <cla:CreatedBy>rrchapp</cla:CreatedBy>
                         <cla:CreatedDate>2013-05-27</cla:CreatedDate>
                         <!--Optional:-->
                         <cla:CreatedProcess>biztalk</cla:CreatedProcess>
                         <!--Optional:-->
                         <cla:SubmissionVersion>1</cla:SubmissionVersion>
                         <cla:UpdatedProcess>rrchapp</cla:UpdatedProcess>
                         <cla:UpdatedBy>rrchapp</cla:UpdatedBy>
                         <cla:UpdatedDate>2013-05-27</cla:UpdatedDate>
                         <cla:ClaimId>12344444555</cla:ClaimId>
                      </cla:Claims>

                   </cla:HeaderInfo>
                   <!--Optional:-->
                   <cla:TransactionId>233</cla:TransactionId>
                   <cla:TSCreateDate>2013-05-27</cla:TSCreateDate>
                   <!--Optional:-->
                   <cla:TSPurposeCode>899</cla:TSPurposeCode>
                   <cla:UpdatedDate>2013-05-27</cla:UpdatedDate>
                   <cla:UpdatedBy>rrchapp</cla:UpdatedBy>
                   <cla:UpdatedProcess>rrchapp</cla:UpdatedProcess>

                </cla:Claim>

               <cla:DocIdentifier>
                   <cla:SourceSystem>ABCD</cla:SourceSystem>
                   <cla:SourceApplication>ABCC</cla:SourceApplication>
                   <cla:DocCreateDate>2013-05-27</cla:DocCreateDate> 
                </cla:DocIdentifier>
             </cla:CCXClaim>


             <cla1:CCXAttachment>
                <cla1:ClaimAttachment>
                   <cla1:AttachmentContent>cid:821808624369</cla1:AttachmentContent>
                </cla1:ClaimAttachment>
             </cla1:CCXAttachment>

          </ser:saveClaim>
       </soapenv:Body>
    </soapenv:Envelope>

12233
我
2013-05-07
rrchapp
rrchapp
1234444
1.
rrchapp
2013-05-27
biztalk
1.
rrchapp
rrchapp
2013-05-27
12344444555
233
2013-05-27
899
2013-05-27
rrchapp
rrchapp
ABCD
ABCC
2013-05-27 
cid:821808624369
错误

    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
       <soap:Body>
          <soap:Fault>
             <faultcode>soap:Client</faultcode>
             <faultstring>Unmarshalling Error: unexpected element (uri:"http://www.carecentrix.com/claim", local:"CCXClaim"). Expected elements are &lt;{}CCXClaim>,&lt;{}CCXAttachment></faultstring>
          </soap:Fault>
       </soap:Body>
    </soap:Envelope>

soap:客户端
解组错误:意外元素(uri:)http://www.carecentrix.com/claim,本地:“CCXClaim”)。所需元素为{}CCXClaim>,{}CCXAttachment>
上面是webservice方法类。要求我有两个参数,但不知怎么的 服务正在回滚故障异常。

请说明发生这种情况的原因,请求是用正确的命名空间发送的。

错误消息说,应该是没有命名空间的
元素。但是,在您的请求中,
显然与名称空间URI
http://www.carecentrix.com/claim
通过
cla
前缀

由于您没有发布您的
WSDL
(以及
XSD
,如果有的话)很难理解。尝试删除请求中的
cla
cla1
前缀