从 webservice(axis2) 响应中删除 xml:ns 标签

发布于 2024-09-29 05:06:10 字数 702 浏览 3 评论 0原文

我有一个使用 axis2 部署的网络服务。服务类上的方法返回一个字符串。

公共字符串 getXML(){ 返回 “你好...”; }

是这样配置的,

<operation name="getXML">
            <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
                class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>

我得到这样的响应,

<ns:getXMLResponse xmlns:ns="http://service.drugservice.xyz.com"><ns:return>&lt;response>Hello...&lt;/response></ns:return></ns:getXMLResponse>

我不希望响应字符串周围有 xml:ns 。我该怎么做呢?我想看到的回应是

<reponse>Hello...</response>

I have a webserivce deployed using axis2. The method on the service class returns a string.

public String getXML(){ return
"Hello..."; }

and the service is configured like this

<operation name="getXML">
            <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
                class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
        </operation>

when I call this service from browser(RESTful) I get response like this

<ns:getXMLResponse xmlns:ns="http://service.drugservice.xyz.com"><ns:return><response>Hello...</response></ns:return></ns:getXMLResponse>

I don't want the xml:ns around the response string. How can I do it? I want to the see the response as

<reponse>Hello...</response>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

成熟的代价 2024-10-06 05:06:10

为此,您必须使用 axis2 客户端 API。像这样的东西

RPCServiceClient serviceClient = null;

            try {
                serviceClient = new RPCServiceClient();
            } catch (AxisFault e) {
                throw e;
            }

            try {
                EndpointReference targetEPR = new EndpointReference("http://localhost/ws/services/drugService");

                // Authorizing access to the url
                QName action = new QName("http://service.drugservice.xyz.com", "getPricingImagesData");

                Options options = serviceClient.getOptions();
                options.setTo(targetEPR);
                Object obj[] = new Object[] {"3885"};
                OMElement responseObject = serviceClient.invokeBlocking(action,obj);
                String response = responseObject.getFirstElement().getText();

                System.out.println(response);
            } catch (AxisFault e) {
                throw e;
            } finally {
                try {
                    serviceClient.cleanup();
                } catch (AxisFault e) {
                    // do nothing
                }
                try {
                    serviceClient.cleanupTransport();
                } catch (AxisFault e) {
                    // do nothing
                }
            }

You have got to use axis2 client API for this. Something like this

RPCServiceClient serviceClient = null;

            try {
                serviceClient = new RPCServiceClient();
            } catch (AxisFault e) {
                throw e;
            }

            try {
                EndpointReference targetEPR = new EndpointReference("http://localhost/ws/services/drugService");

                // Authorizing access to the url
                QName action = new QName("http://service.drugservice.xyz.com", "getPricingImagesData");

                Options options = serviceClient.getOptions();
                options.setTo(targetEPR);
                Object obj[] = new Object[] {"3885"};
                OMElement responseObject = serviceClient.invokeBlocking(action,obj);
                String response = responseObject.getFirstElement().getText();

                System.out.println(response);
            } catch (AxisFault e) {
                throw e;
            } finally {
                try {
                    serviceClient.cleanup();
                } catch (AxisFault e) {
                    // do nothing
                }
                try {
                    serviceClient.cleanupTransport();
                } catch (AxisFault e) {
                    // do nothing
                }
            }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文