之前借助nusoap开发webservices,但好像在php 5.3中老报错,好像不支持,请问大家有没有php5.3开发的相关实例,或者支持5.3的nusoap插件,邮箱cxh741@163.com谢谢
回复讨论(解决方案) 把报的错发上来
把报的错发上来
我写服务端接口在5.2上正常(php/java调用都没问题),到5.3上调用不通,php调用页面空白,java调用错误如下
exception in thread main axisfault faultcode: {http://schemas.xmlsoap.org/soap/envelope/}server.userexception faultsubcode: faultstring: org.xml.sax.saxexception: bad envelope tag: br faultactor: faultnode: faultdetail: {http://xml.apache.org/axis/}stacktrace:org.xml.sax.saxexception: bad envelope tag: br at org.apache.axis.message.envelopebuilder.startelement(envelopebuilder.java:71) at org.apache.axis.encoding.deserializationcontext.startelement(deserializationcontext.java:1048) at com.sun.org.apache.xerces.internal.parsers.abstractsaxparser.startelement(abstractsaxparser.java:501) at com.sun.org.apache.xerces.internal.parsers.abstractxmldocumentparser.emptyelement(abstractxmldocumentparser.java:179) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.scanstartelement(xmlnsdocumentscannerimpl.java:377) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl$nscontentdriver.scanrootelementhook(xmlnsdocumentscannerimpl.java:626) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl$fragmentcontentdriver.next(xmldocumentfragmentscannerimpl.java:3095) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl$prologdriver.next(xmldocumentscannerimpl.java:922) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl.next(xmldocumentscannerimpl.java:648) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.next(xmlnsdocumentscannerimpl.java:140) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl.scandocument(xmldocumentfragmentscannerimpl.java:510) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:807) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.xmlparser.parse(xmlparser.java:107) at com.sun.org.apache.xerces.internal.parsers.abstractsaxparser.parse(abstractsaxparser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.saxparserimpl$jaxpsaxparser.parse(saxparserimpl.java:522) at javax.xml.parsers.saxparser.parse(saxparser.java:395) at org.apache.axis.encoding.deserializationcontext.parse(deserializationcontext.java:227) at org.apache.axis.soappart.getassoapenvelope(soappart.java:696) at org.apache.axis.message.getsoapenvelope(message.java:435) at org.apache.axis.handlers.soap.mustunderstandchecker.invoke(mustunderstandchecker.java:62) at org.apache.axis.client.axisclient.invoke(axisclient.java:206) at org.apache.axis.client.call.invokeengine(call.java:2784) at org.apache.axis.client.call.invoke(call.java:2767) at org.apache.axis.client.call.invoke(call.java:2443) at org.apache.axis.client.call.invoke(call.java:2366) at org.apache.axis.client.call.invoke(call.java:1812) at test.testgoods.main(testgoods.java:57) {http://xml.apache.org/axis/}hostname:luoleiorg.xml.sax.saxexception: bad envelope tag: br at org.apache.axis.axisfault.makefault(axisfault.java:101) at org.apache.axis.soappart.getassoapenvelope(soappart.java:701) at org.apache.axis.message.getsoapenvelope(message.java:435) at org.apache.axis.handlers.soap.mustunderstandchecker.invoke(mustunderstandchecker.java:62) at org.apache.axis.client.axisclient.invoke(axisclient.java:206) at org.apache.axis.client.call.invokeengine(call.java:2784) at org.apache.axis.client.call.invoke(call.java:2767) at org.apache.axis.client.call.invoke(call.java:2443) at org.apache.axis.client.call.invoke(call.java:2366) at org.apache.axis.client.call.invoke(call.java:1812) at test.testgoods.main(testgoods.java:57)caused by: org.xml.sax.saxexception: bad envelope tag: br at org.apache.axis.message.envelopebuilder.startelement(envelopebuilder.java:71) at org.apache.axis.encoding.deserializationcontext.startelement(deserializationcontext.java:1048) at com.sun.org.apache.xerces.internal.parsers.abstractsaxparser.startelement(abstractsaxparser.java:501) at com.sun.org.apache.xerces.internal.parsers.abstractxmldocumentparser.emptyelement(abstractxmldocumentparser.java:179) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.scanstartelement(xmlnsdocumentscannerimpl.java:377) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl$nscontentdriver.scanrootelementhook(xmlnsdocumentscannerimpl.java:626) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl$fragmentcontentdriver.next(xmldocumentfragmentscannerimpl.java:3095) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl$prologdriver.next(xmldocumentscannerimpl.java:922) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl.next(xmldocumentscannerimpl.java:648) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.next(xmlnsdocumentscannerimpl.java:140) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl.scandocument(xmldocumentfragmentscannerimpl.java:510) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:807) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.xmlparser.parse(xmlparser.java:107) at com.sun.org.apache.xerces.internal.parsers.abstractsaxparser.parse(abstractsaxparser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.saxparserimpl$jaxpsaxparser.parse(saxparserimpl.java:522) at javax.xml.parsers.saxparser.parse(saxparser.java:395) at org.apache.axis.encoding.deserializationcontext.parse(deserializationcontext.java:227) at org.apache.axis.soappart.getassoapenvelope(soappart.java:696) ... 9 more
又来了?5.3上php能调吗?
又来了?5.3上php能调吗?
对吖,亲,这个问题纠结死啦。这都几天了,我一直在搞这个问题,现在就是php 5.3.8版本上有问题,我估计就是版本问题导致的,nusoap插件不支持5.3以上吧,我的本地环境是 5.2.4的,是可以的
php5.2 起就提供了 php_soap 扩展,机器码的效率肯定要高于脚本,应优先选用
只不过到目前为止,还没有提供 wsdl 书写工具
nusoap 起源于 php4 限于开发者的能力,或多或少会存在问题。尤其是高版本的 php 语法上做了很多调整,如果你没有注意到,或没有精力去调整代码。则必然带来很多麻烦
php5.2 起就提供了 php_soap 扩展,机器码的效率肯定要高于脚本,应优先选用
只不过到目前为止,还没有提供 wsdl 书写工具
nusoap 起源于 php4 限于开发者的能力,或多或少会存在问题。尤其是高版本的 php 语法上做了很多调整,如果你没有注意到,或没有精力去调整代码。则必然带来很多麻烦
是啊,我也看了一篇关于webservices php5.3之后的开发实例,是要自己通过工具生成wsdl文件,就是那样改动太大了,还要有很大的调整,纠结吖
但你的服务已然形成,wsdl文件也没有修改的必要。更不要说创建了
调用接口报这个错是什么错哩
exception in thread main axisfault faultcode: {http://schemas.xmlsoap.org/soap/envelope/}server.userexception faultsubcode: faultstring: org.xml.sax.saxparseexception: the value of the attribute "prefix="xmlns",localpart="ns1",rawname="xmlns:ns1"" is invalid. prefixed namespace bindings may not be empty. faultactor: faultnode: faultdetail: {http://xml.apache.org/axis/}stacktrace:org.xml.sax.saxparseexception: the value of the attribute "prefix="xmlns",localpart="ns1",rawname="xmlns:ns1"" is invalid. prefixed namespace bindings may not be empty. at com.sun.org.apache.xerces.internal.util.errorhandlerwrapper.createsaxparseexception(errorhandlerwrapper.java:195) at com.sun.org.apache.xerces.internal.util.errorhandlerwrapper.fatalerror(errorhandlerwrapper.java:174) at com.sun.org.apache.xerces.internal.impl.xmlerrorreporter.reporterror(xmlerrorreporter.java:388) at com.sun.org.apache.xerces.internal.impl.xmlerrorreporter.reporterror(xmlerrorreporter.java:318) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.scanattribute(xmlnsdocumentscannerimpl.java:526) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.scanstartelement(xmlnsdocumentscannerimpl.java:277) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl$nscontentdriver.scanrootelementhook(xmlnsdocumentscannerimpl.java:626) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl$fragmentcontentdriver.next(xmldocumentfragmentscannerimpl.java:3095) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl$prologdriver.next(xmldocumentscannerimpl.java:922) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl.next(xmldocumentscannerimpl.java:648) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.next(xmlnsdocumentscannerimpl.java:140) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl.scandocument(xmldocumentfragmentscannerimpl.java:510) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:807) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.xmlparser.parse(xmlparser.java:107) at com.sun.org.apache.xerces.internal.parsers.abstractsaxparser.parse(abstractsaxparser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.saxparserimpl$jaxpsaxparser.parse(saxparserimpl.java:522) at javax.xml.parsers.saxparser.parse(saxparser.java:395) at org.apache.axis.encoding.deserializationcontext.parse(deserializationcontext.java:227) at org.apache.axis.soappart.getassoapenvelope(soappart.java:696) at org.apache.axis.message.getsoapenvelope(message.java:435) at org.apache.axis.handlers.soap.mustunderstandchecker.invoke(mustunderstandchecker.java:62) at org.apache.axis.client.axisclient.invoke(axisclient.java:206) at org.apache.axis.client.call.invokeengine(call.java:2784) at org.apache.axis.client.call.invoke(call.java:2767) at org.apache.axis.client.call.invoke(call.java:2443) at org.apache.axis.client.call.invoke(call.java:2366) at org.apache.axis.client.call.invoke(call.java:1812) at test.testgoods.main(testgoods.java:57) {http://xml.apache.org/axis/}hostname:luoleiorg.xml.sax.saxparseexception: the value of the attribute prefix=xmlns,localpart=ns1,rawname=xmlns:ns1 is invalid. prefixed namespace bindings may not be empty. at org.apache.axis.axisfault.makefault(axisfault.java:101) at org.apache.axis.soappart.getassoapenvelope(soappart.java:701) at org.apache.axis.message.getsoapenvelope(message.java:435) at org.apache.axis.handlers.soap.mustunderstandchecker.invoke(mustunderstandchecker.java:62) at org.apache.axis.client.axisclient.invoke(axisclient.java:206) at org.apache.axis.client.call.invokeengine(call.java:2784) at org.apache.axis.client.call.invoke(call.java:2767) at org.apache.axis.client.call.invoke(call.java:2443) at org.apache.axis.client.call.invoke(call.java:2366) at org.apache.axis.client.call.invoke(call.java:1812) at test.testgoods.main(testgoods.java:57)caused by: org.xml.sax.saxparseexception: the value of the attribute prefix=xmlns,localpart=ns1,rawname=xmlns:ns1 is invalid. prefixed namespace bindings may not be empty. at com.sun.org.apache.xerces.internal.util.errorhandlerwrapper.createsaxparseexception(errorhandlerwrapper.java:195) at com.sun.org.apache.xerces.internal.util.errorhandlerwrapper.fatalerror(errorhandlerwrapper.java:174) at com.sun.org.apache.xerces.internal.impl.xmlerrorreporter.reporterror(xmlerrorreporter.java:388) at com.sun.org.apache.xerces.internal.impl.xmlerrorreporter.reporterror(xmlerrorreporter.java:318) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.scanattribute(xmlnsdocumentscannerimpl.java:526) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.scanstartelement(xmlnsdocumentscannerimpl.java:277) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl$nscontentdriver.scanrootelementhook(xmlnsdocumentscannerimpl.java:626) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl$fragmentcontentdriver.next(xmldocumentfragmentscannerimpl.java:3095) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl$prologdriver.next(xmldocumentscannerimpl.java:922) at com.sun.org.apache.xerces.internal.impl.xmldocumentscannerimpl.next(xmldocumentscannerimpl.java:648) at com.sun.org.apache.xerces.internal.impl.xmlnsdocumentscannerimpl.next(xmlnsdocumentscannerimpl.java:140) at com.sun.org.apache.xerces.internal.impl.xmldocumentfragmentscannerimpl.scandocument(xmldocumentfragmentscannerimpl.java:510) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:807) at com.sun.org.apache.xerces.internal.parsers.xml11configuration.parse(xml11configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.xmlparser.parse(xmlparser.java:107) at com.sun.org.apache.xerces.internal.parsers.abstractsaxparser.parse(abstractsaxparser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.saxparserimpl$jaxpsaxparser.parse(saxparserimpl.java:522) at javax.xml.parsers.saxparser.parse(saxparser.java:395) at org.apache.axis.encoding.deserializationcontext.parse(deserializationcontext.java:227) at org.apache.axis.soappart.getassoapenvelope(soappart.java:696) ... 9 more
有可能是环境配置问题
有可能是环境配置问题 java的环境吗,这个环境调用过别的接口,可以掉通的
调用接口报这个错是什么错哩
java code?1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374exception in thread ma……
the value of the attribute prefix=xmlns,localpart=ns1,rawname=xmlns:ns1 is invalid. prefixed namespace bindings may not be empty.
看下这行错误,你确定你调用方法没错?参数都传对了?