使用带有twitter4j的xpages来获取服务器上的访问令牌

时间:2013-06-17 08:56:45

标签: xpages lotus-domino twitter4j

我正在使用twitter4j在我的网页上显示一些推文。当我在本地运行时,代码工作正常。如果我把它放在服务器上,我就会收到错误。

代码看起来像

Twitter twitter = TwitterFactory.getSingleton();
twitter.setOAuthConsumer(consumerKey, consumerSecret);

错误:

java.lang.AssertionError: java.lang.reflect.InvocationTargetException
twitter4j.TwitterFactory.(TwitterFactory.java:76)
java.lang.J9VMInternals.initializeImpl(Native Method)
java.lang.J9VMInternals.initialize(J9VMInternals.java:200)
de.workm.java.xc.twitter11.TwitterOAuthCredentials.getRequestURL(TwitterOAuthCredentials.java:167)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
java.lang.reflect.Method.invoke(Method.java:611)
com.ibm.jscript.types.JavaAccessObject.call(JavaAccessObject.java:321)
com.ibm.jscript.types.FBSObject.call(FBSObject.java:161)
com.ibm.jscript.ASTTree.ASTCall.interpret(ASTCall.java:197)
com.ibm.jscript.ASTTree.ASTVariableDecl.interpret(ASTVariableDecl.java:82)
com.ibm.jscript.ASTTree.ASTProgram.interpret(ASTProgram.java:119)
com.ibm.jscript.ASTTree.ASTProgram.interpretEx(ASTProgram.java:139)
com.ibm.jscript.JSExpression._interpretExpression(JSExpression.java:435)
com.ibm.jscript.JSExpression.access$1(JSExpression.java:424)
com.ibm.jscript.JSExpression$2.run(JSExpression.java:414)
java.security.AccessController.doPrivileged(AccessController.java:310)
com.ibm.jscript.JSExpression.interpretExpression(JSExpression.java:410)
com.ibm.jscript.JSExpression.evaluateValue(JSExpression.java:251)
com.ibm.jscript.JSExpression.evaluateValue(JSExpression.java:234)
com.ibm.xsp.javascript.JavaScriptInterpreter.interpret(JavaScriptInterpreter.java:222)
com.ibm.xsp.binding.javascript.JavaScriptMethodBinding.invoke(JavaScriptMethodBinding.java:111)
com.ibm.xsp.application.ActionListenerImpl.processAction(ActionListenerImpl.java:60)
javax.faces.component.UICommand.broadcast(UICommand.java:324)

由于 阿明

1 个答案:

答案 0 :(得分:2)

该类使用normal mortal code不允许的反射。您需要将其放入插件或elevate permissions