繁体   English   中英

Mantis SOAP错误访问mantisconnect.php(Eclipse Mylyn-Plugin)

[英]Mantis SOAP-Error accessing mantisconnect.php (Eclipse Mylyn-Plugin)

我在服务器上安装了Mantis BT 1.2.19,它运行良好。 为了在Eclipse-IDE(火星)中从中受益,我安装了Mantis的Task-Repo插件并尝试添加连接。

当我在Eclipse中单击“验证设置”时,出现以下错误:

 SOAP-ERROR: Parsing WSDL: Couldn't load from '/var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.wsdl' : failed to load external entity "/var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.wsdl"

在服务器上的错误日志中,以下条目

[14-Oct-2015 11:25:05 Europe/Berlin] [mantisconnect.php] Error Type: SYSTEM WARNING,
Error Description: SoapServer::SoapServer(): I/O warning : failed to load external entity "/var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.wsdl"
Stack Trace:
mantisconnect.php L121 SoapServer(<string>'mantisconnect.wsdl', <Array> { ['features'] => 5 })

[14-Oct-2015 11:25:05 Europe/Berlin] PHP Warning:  Uncaught SoapFault exception: [Server] Error Type: SYSTEM WARNING,
Error Description: SoapServer::SoapServer(): I/O warning : failed to load external entity &quot;/var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.wsdl&quot; in /var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mc_api.php:107
Stack trace:
#0 /var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mc_api.php(530): SoapActions::sendSoapFault('Server', 'Error Type: SYS...')
#1 [internal function]: mc_error_handler(2, 'SoapServer::Soa...', '/var/www/vhosts...', 121, Array)
#2 /var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.php(121): SoapServer->SoapServer('mantisconnect.w...', Array)
#3 {main}
  thrown in /var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mc_api.php on line 107
[14-Oct-2015 11:25:05 Europe/Berlin] PHP Fatal error:  SOAP-ERROR: Parsing WSDL: Couldn't load from '/var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.wsdl' : failed to load external entity "/var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.wsdl"
 in /var/www/vhosts/{myhost}/httpdocs/mantis/api/soap/mantisconnect.php on line 121

上面的错误是由Mantis插件在访问URL时产生的

188.109.171.76 - - [14/Oct/2015:11:25:05 +0200] "POST /mantis/api/soap/mantisconnect.php HTTP/1.0" 500 1067 "-" "Mylyn/3.17.0 Mylyn-Mantis Connector/3.10.1 Apache Axis/1.4 Eclipse (org.eclipse.epp.package.jee.product) HttpClient/3.1 Java/1.8.0_60 (Oracle) Windows 7/6.1 (amd64; de_DE)"

但是,即使是对上述URL的“常规” GET访问也会产生相同的错误

https://{myhost}/mantis/api/soap/mantisconnect.php

访问时不会产生错误

https://{myhost}/mantis/api/soap/mantisconnect.php?wsdl

为了自己解决问题,我检查了几个想法:

  • 文件已存在... {myhost}显然只是一个占位符-由我放置
  • 我切换到Web服务器www-data的上下文,并尝试访问该文件...可以访问

所以我不知道...

PHP版本在Ubuntu 14.04.3 LTS上为5.5.9-1ubuntu4.13

€dit:

mantis/api/soap/mantisconnect.php错误跟踪到以下PHP行

 $server = new SoapServer("mantisconnect.wsdl",
                        array('features' => SOAP_USE_XSI_ARRAY_TYPE + SOAP_SINGLE_ELEMENT_ARRAYS)
        );

我不明白为什么会引发错误-因为正如我所说:该错误存在且可由网络服务器读取...

€edit2:

我换了线

 $server = new SoapServer("mantisconnect.wsdl",

$server = new SoapServer("http://{myhost}/mantis/api/soap/mantisconnect.wsdl",

这可以工作...所以我有一个“解决方案”,但我不知道为什么通过文件访问不起作用

我想我自己找到了应答者(几个小时后,解决方法失败-再次出现相同的错误)。

似乎是PHP(在Ubuntu上)的错误,如此处所述https://bugs.launchpad.net/ubuntu/+source/php5/+bug/1160336

自2013年以来未解决:-(

我当前的解决方法是禁用php.ini中的soap.wsdl_cache_enabled ,这似乎soap.wsdl_cache_enabled

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM