php加载php_soap.dll提示应用程序错误"0xx17a3183"指令引用的"0x02080236"内存.该内存不能为"written".
解决方案 »
- php如何实现前台数据自动更新
- (急)PHP用smarty如何实现国际化(能不能说的具体些)
- 我下载了pdt allin one,怎么看不到php project?怎么配置,才能开发PHP?
- curl在apache2.2.14下报错
- apache php mysql套件
- mysql4+php5+windows2003+IIS安装后 php 程序不能运行.
- 大家有想过自己开个软件公司吗?难道你想一辈子写程序吗?这需要具备那些东东,注册有限公司有何要求,欢迎讨论!
- 关于session的问题
- 难道这个问题没有人会解决?
- 时间提交问题
- $_SERVER['PHP_SELF'] 问题
- 招聘条件上说 具有PHP缓存技术、静态化设计方面的经验 PHP缓存技术有那些 静太化设计是不是指re_write
echo "it is ok";
}else{
echo "it is wrong";
}
如果不行的话,重装php apache吧!
libxml
libXML support active
libXML Version 2.7.3
libXML streams enabled
我的是2.7.3的行不?
php版本: 5.2.13
试了二种解决方法:
1、重装APAHCE和PHP,重新配置
2、php.ini的配置。放到了C盘WINDOWS文件夹下一份
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;import com.zzxy.mvc.common.SpringBeanUtils;
import com.zzxy.mvc.dao.common.DaoCollection;
import com.zzxy.mvc.entity.YjfwBdz;
import com.zzxy.mvc.entity.YjfwByq;
import com.zzxy.mvc.entity.YjfwCxxx;
import com.zzxy.mvc.entity.YjfwGdb;
import com.zzxy.mvc.entity.YjfwMx;
import com.zzxy.mvc.entity.YjfwPds;
import com.zzxy.mvc.entity.YjfwYdxx;
import com.zzxy.mvc.service.common.AbstractService;//Generated by MyEclipse
public class MainUserInfoServiceImpl extends AbstractService implements IMainUserInfoService {
@Override
public String getMainUserInfo(Map ydhh) throws DocumentException {
System.out.println("================================="+ydhh.get(ydhh)+"---");
YjfwYdxx yjfwYdxx=new YjfwYdxx();
this.DC = (DaoCollection) SpringBeanUtils.getBean("DC");
//解析参数取用电户号,参数为XML格式的字符串
//String inxml = "<?xml version='1.0' encoding='UTF-8'?><gt:getMainUserInfoInput xmlns:gml='http://www.opengis.net/gml' xmlns:gt='http://www.sgcc.com.cn/sggis/service/schema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.sgcc.com.cn/sggis/service/schemagistypes.xsd'><gt:ydhh>3015040641</gt:ydhh></gt:getMainUserInfoInput>";
Document documentin=DocumentHelper.parseText(ydhh.get("ydhh").toString());
Element rootin=documentin.getRootElement();
String text=rootin.elementText("ydhh");
System.out.println("text======"+text);
List<YjfwYdxx> listYdxx=DC.getYjfwYdxxDAO().findByYdhh(text);
String outXML="<?xml version='1.0' encoding='UTF-8'?><gt:getMainUserInfoOutput xmlns:gml='http://www.opengis.net/gml' xmlns:gt='http://www.sgcc.com.cn/sggis/service/schema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.sgcc.com.cn/sggis/service/schemagistypes.xsd'></gt:getMainUserInfoOutput>";
Document documentout=DocumentHelper.parseText(outXML);
if(listYdxx != null && listYdxx.size()>0){
//将返回的大用户数据转换成XML
yjfwYdxx=(YjfwYdxx)listYdxx.get(0);
Element rootout=documentout.getRootElement();
Element bdzElm=rootout.addElement("gt:bdzid");
Element mxElm=rootout.addElement("gt:mxid");
Element gdbElm=rootout.addElement("gt:gdbid");
Element xlElm=rootout.addElement("gt:xlid");
Element fdkgElm=rootout.addElement("gt:fdkg");
Element sjmxElm=rootout.addElement("gt:sjmxmc");
if(yjfwYdxx.getBdzid() != null){
YjfwBdz yjfwBdz = DC.getYjfwBdzDAO().findById(yjfwYdxx.getBdzid());
if (yjfwBdz != null) {
bdzElm.addText(yjfwBdz.getMc());//变电站
}
}
if(yjfwYdxx.getMxid() != null){
YjfwMx yjfwMx = DC.getYjfwMxDAO().findById(yjfwYdxx.getMxid());
String sjmxmc=this.getSjmxmc(yjfwYdxx.getMxid());
if(yjfwMx != null){
mxElm.addText(yjfwMx.getMc());//母线
}
sjmxElm.addText(sjmxmc);//上级母线名称
}
if(yjfwYdxx.getGdbid() != null){
YjfwGdb yjfwGdb =DC.getYjfwGdbDAO().findById(yjfwYdxx.getGdbid());
if(yjfwGdb != null){
gdbElm.addText(yjfwGdb.getMc());//供电板
}
}
if(yjfwYdxx.getXlid() != null){
YjfwCxxx yjfwCxxx=DC.getYjfwCxxxDAO().findById(yjfwYdxx.getXlid());
if(yjfwCxxx != null){
xlElm.addText(yjfwCxxx.getMc());//线路
}
}
if(yjfwYdxx.getFdkg() != null){
YjfwPds yjfwPds =DC.getYjfwPdsDAO().findById(yjfwYdxx.getFdkg());
if(yjfwPds != null){
fdkgElm.addText(yjfwPds.getMc());//配电室
}
}
rootout.addElement("gt:ydhh").addText(yjfwYdxx.getYdhh());
rootout.addElement("gt:ydhm").addText(yjfwYdxx.getYdhm());
rootout.addElement("gt:ssfj").addText(yjfwYdxx.getSsfj());
Element fjfzrElm=rootout.addElement("gt:fjfzr");
if(yjfwYdxx.getFjfzr() != null){
fjfzrElm.addText(yjfwYdxx.getFjfzr());
}
Element fzrlxfsElm=rootout.addElement("gt:fzrlxfs");
if(yjfwYdxx.getGdfs() != null){
fzrlxfsElm.addText(yjfwYdxx.getFzrlxfs());
}
Element gdfsElm=rootout.addElement("gt:gdfs");
if(yjfwYdxx.getGdfs() != null){
gdfsElm.addText(yjfwYdxx.getGdfs());
}
Element byqxzElm=rootout.addElement("gt:byqxz");
if(yjfwYdxx.getByqxz() != null){
byqxzElm.addText(yjfwYdxx.getByqxz());
}
Element byqrlElm=rootout.addElement("gt:byqrl");
if(yjfwYdxx.getByqrl() != null){
byqrlElm.addText(yjfwYdxx.getByqrl());
}
Element dydjElm=rootout.addElement("gt:dydj");
if(yjfwYdxx.getDydj() != null){
dydjElm.addText(yjfwYdxx.getDydj());
}
Element hfylElm=rootout.addElement("gt:hyfl");
if(yjfwYdxx.getHyfl() != null){
hfylElm.addText(yjfwYdxx.getHyfl());
}
Element gnhElm=rootout.addElement("gt:gnh");
if(yjfwYdxx.getGnh() != null){
gnhElm.addText(yjfwYdxx.getGnh());
}
Element lxscElm=rootout.addElement("gt:lxsc");
if(yjfwYdxx.getLxsc() != null){
lxscElm.addText(yjfwYdxx.getLxsc());
}
Element zxEml=rootout.addElement("gt:zx");
if(yjfwYdxx.getZx() != null){
zxEml.addText(yjfwYdxx.getZx());
}
Element yfElm=rootout.addElement("gt:yf");
if(yjfwYdxx.getYf() != null){
yfElm.addText(yjfwYdxx.getYf());
}
Element mgyhflElm=rootout.addElement("gt:mgyhfl");
if(yjfwYdxx.getMgyhfl() != null){
mgyhflElm.addText(yjfwYdxx.getMgyhfl());
}
Element gwyhElm=rootout.addElement("gt:gwyh");
if(yjfwYdxx.getGwyh() != null){
gwyhElm.addText(yjfwYdxx.getGwyh());
}
Element gwjbElm=rootout.addElement("gt:gwjb");
if(yjfwYdxx.getGwjb() != null){
gwjbElm.addText(yjfwYdxx.getGwjb());
}
Element zcfhElm=rootout.addElement("gt:zcfh");
Element bafhElm=rootout.addElement("gt:bafh");
if(yjfwYdxx.getZcfh() != null && !"".equals(yjfwYdxx.getZcfh()) ){
zcfhElm.addText(yjfwYdxx.getZcfh().toString());
}
if(yjfwYdxx.getBafh() != null && !"".equals(yjfwYdxx.getBafh()) ){
bafhElm.addText(yjfwYdxx.getBafh().toString());
}
Element lxrElm=rootout.addElement("gt:lxr");
if(yjfwYdxx.getLxr() != null){
lxrElm.addText(yjfwYdxx.getLxr());
}
Element lxdhElm=rootout.addElement("gt:lxdh");
if(yjfwYdxx.getLxdh() != null){
lxdhElm.addText(yjfwYdxx.getLxdh());
}
Element lxsjElm=rootout.addElement("gt:lxsj");
if(yjfwYdxx.getLxsj() != null){
lxsjElm.addText(yjfwYdxx.getLxsj());
}
Element ybElm=rootout.addElement("gt:yb");
if(yjfwYdxx.getYb() != null){
ybElm.addText(yjfwYdxx.getYb());
}
Element txdzElm=rootout.addElement("gt:txdz");
if(yjfwYdxx.getTxdz() != null){
txdzElm.addText(yjfwYdxx.getTxdz());
}
Element yyzElm=rootout.addElement("gt:yyz");
if(yjfwYdxx.getYyz() != null){
yyzElm.addText(yjfwYdxx.getYyz());
}
Element sdyElm=rootout.addElement("gt:sdy");
if(yjfwYdxx.getSdy() != null){
sdyElm.addText(yjfwYdxx.getSdy());
}
Element xlxzElm=rootout.addElement("gt:xlxz");
if(yjfwYdxx.getXlxz() != null){
xlxzElm.addText(yjfwYdxx.getXlxz());
}
Element cxwzElm=rootout.addElement("gt:cxwz");
if(yjfwYdxx.getCxwz() != null){
cxwzElm.addText(yjfwYdxx.getCxwz());
}
Element beizElm=rootout.addElement("gt:beiz");
if(yjfwYdxx.getBeiz() != null){
beizElm.addText(yjfwYdxx.getBeiz());
}
}
//XML转成XML格式的字符串
outXML=documentout.asXML();
// System.out.println(outXML);
return outXML;
}
//取上级母线名称的方法
private String getSjmxmc(Long mxid){
String sjmxmc="";
YjfwByq yjfwByq=DC.getYjfwByqDAO().findSJByq(mxid);
if (yjfwByq != null) {
YjfwMx yjfwMx = DC.getYjfwMxDAO().findById(yjfwByq.getSjmxid());
sjmxmc=yjfwMx.getMc();
}
return sjmxmc;
}
}
PHP$str= array("ydhh"=>"343243243","ydhh2"=>"343243243","ydhh3"=>"343243243");
$client = new SoapClient("http://192.168.5.5:8888/MGYH/services/MainUserInfoService?wsdl");
try {
$result = $client->getMainUserInfo($str); // will cause a Soap Fault if divide by zero
print "The answer is: $result";
} catch(SoapFault $e) {
print "Sorry an error was caught executing your request: $e->getMessage()";
}
在线等
是null
try {
$result = $client->getMainUserInfo($str); // will cause a Soap Fault if divide by zero
print "The answer is: $result";
} catch(SoapFault $e) {
print "Sorry an error was caught executing your request: $e->getMessage()";
} echo "<br/>";
echo "Request :<br/>".htmlspecialchars($client->__getLastRequest())."<br/>";
echo "<br/>";
echo "Response :<br/>".htmlspecialchars($client->__getLastResponse())."<br/>";
这样子测一下!!看看!
页面输出
Sorry an error was caught executing your request: ()
Request :
<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns1="http://service.mvc.zzxy.com"><SOAP-ENV:Body><ns1:getMainUserInfo><ns1:in0 xsi:nil="true"/></ns1:getMainUserInfo></SOAP-ENV:Body></SOAP-ENV:Envelope> Response :
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Fault: java.lang.NullPointerException</faultstring></soap:Fault></soap:Body></soap:Envelope>
$result = $client->getMainUserInfo('123','321','567'); // will cause a Soap Fault if divide by zero
Sorry an error was caught executing your request: ()
Request :
<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://service.mvc.zzxy.com"><SOAP-ENV:Body><ns1:getMainUserInfo/><param1>321</param1><param2>567</param2></SOAP-ENV:Body></SOAP-ENV:Envelope> Response :
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Not enough message parts were received for the operation.</faultstring></soap:Fault></soap:Body></soap:Envelope>JAVA那部分写的行不?
我也没研究过java里的wsdl
outXML=documentout.asXML();
// System.out.println(outXML);
return outXML;
}
但是返回信息中说没有 收到足够的信息来操作! >Not enough message parts were received for the operation.</
或者你 这么试一下 ,$clent-> getMainUserInfo(array('123','322','555'));
我想得一个数组,我不会JAVA,JAVA那边是我同事在做,她也不知道刚才写的方法对不