2012-09-25 36 views
0

我有一个java web开始程序,使用xmlrpc服务3在drupal 7网站上创建内容。我的代码大致基于this和它工作正常,在下列平台:java7 drupal服务XmlRpcHttpTransportException:HTTP服务器返回意外状态:未经授权:访问拒绝用户匿名

Linux x86的64位(openjdk6-7), MAC OS的x64(64位的Java6), 窗口64(甲骨文JVM X32,X64)从的Java6到java7u4

由于oracle java7u5到java7u7我的代码不工作。在U5我得到了一些奇怪的JNLP例外和U6和U7我碰到下面的堆栈跟踪:

org.apache.xmlrpc.client.XmlRpcHttpTransportException: HTTP server returned unexpected status: Unauthorized: Access denied for user anonymous 
org.apache.xmlrpc.client.XmlRpcSunHttpTransport.getInputStream(XmlRpcSunHttpTransport.java:94) 
org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:152) 
org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:143) 
org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:69) 
org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:56) 
org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:167) 
org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:158) 
org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:147) 
my.program.Drupal7XmlRpc.createNode(Drupal7XmlRpc.java:223) 
... 

但是,如果我这样做从Windows上我的Eclipse IDE中运行该程序,而Java Web Start的我的代码工作精细。 我不知道这是否是最新的oracle jvms的安全规定,或者是我应该发布的错误。

最后一点是我的jnlp文件是基于this

回答

3

首先,我想指出,你应该发布一些代码来帮助我们开发更准确的答案。

您使用的是什么样的身份验证?您是否使用任何身份验证? 正如here所说,这种问题发生了很多,因为人们首先尝试创建节点而不进行身份验证。

另一方面,如果您在尝试创建节点之前已经过身份验证,则也会发生此问题。这很可能是由于经过身份验证的用户无权创建指定内容类型的节点。

+0

可能我的问题没有描述得那么好。在第二行,我发布了我正在使用的代码的链接,正如您在那里可以看到的那样,这是一个用户名/密码认证。 问题是,如果这个代码编译并运行在一台机器上,它工作正常。但是,如果它运行在Windows上的Java web开始,我会遇到上述类型的问题。 – kongeor

相关问题