gpt4 book ai didi

java - 如何为 javax.xml.ws.Holder 设置一个值?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:57:02 27 4
gpt4 key购买 nike

我们目前在 JAX-WS 实现方面遇到问题,特别是在获取服务返回的值方面,在我们的例子中,尽管我们给它一个值,但它始终为 null。

在对我们的问题进行更多解释之前的一些代码:

这是我们操作的签名:

@WebMethod(action = "urn:genererEdition")
public void genererEdition(
@WebParam(name = "requeteEdition", targetNamespace = "http://creditcgi.com/serviceeditique", partName = "requete")
RequeteEdition requete,
@WebParam(name = "reponseEdition", targetNamespace = "http://creditcgi.com/serviceeditique", mode = WebParam.Mode.OUT, partName = "reponse")
Holder<ReponseEdition> reponse,
@WebParam(name = "documentProduit", targetNamespace = "", mode = WebParam.Mode.OUT, partName = "documentProduit")
Holder<byte[]> documentProduit);

这是我们的网络服务测试用例:

@Test
public void testCallGenererEdition() {
RequeteEdition requete = new RequeteEdition();

Holder<ReponseEdition> reponseHolder = new Holder<ReponseEdition>(new ReponseEdition());
Holder<byte[]> documentHolder = new Holder<byte[]>(new byte[512]);

editique.genererEdition(requete, reponseHolder, documentHolder);

Assert.assertNotNull(reponseHolder.value);
Assert.assertNotNull(reponseHolder.value.getCodeRetour());
}

最后,我们的 WS 实现:

@Override
public void genererEdition(RequeteEdition requete,
Holder<ReponseEdition> reponse, Holder<byte[]> documentProduit) {

// if we do no instanciate ReponseEdition, we got a Null Pointer Exception
reponse.value = new ReponseEdition();

reponse.value.setCodeRetour("OK");
}

正如您在测试中看到的,我们总是得到 null。在响应持有者中总是返回一个空对象,我们做错了什么?

提前谢谢你。

最佳答案

它将解决您在响应中获取 NULL 值的问题。

....genererEdition(....){
ReponseEdition re = new ReponseEdition();
reponse.value = re;
}

关于java - 如何为 javax.xml.ws.Holder 设置一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3555193/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com