我创建了一个J2ME应用程序,并将它添加为另一个应用程序中的jar。原始应用程序以最大权限运行并且工作正常,但是当我在第二个应用程序中将它添加为jar时,在进行Web服务调用时出现安全异常,并且我注意到该应用程序正在以最低安全级别运行。J2ME:以编程方式设置安全权限
我已经在JAD中为http和https添加了midlet权限。
javax.microedition.io.Connector.http, javax.microedition.io.Connector.https
有关如何解决这个问题的任何想法?我得到的错误是如下:
java.lang.SecurityException: Application not authorized to access the restricted API at com.sun.midp.security.SecurityToken.checkForPermission(+459) at com.sun.midp.security.SecurityToken.checkForPermission(+15) at com.sun.midp.midletsuite.MIDletSuiteImpl.checkForPermission(+20) at com.sun.midp.dev.DevMIDletSuiteImpl.checkForPermission(+28) at com.sun.midp.dev.DevMIDletSuiteImpl.checkForPermission(+7) at com.sun.midp.io.ConnectionBaseAdapter.checkForPermission(+67) at com.sun.midp.io.j2me.http.Protocol.checkForPermission(+17) at com.sun.midp.io.ConnectionBaseAdapter.openPrim(+6) at javax.microedition.io.Connector.openPrim(+299) at javax.microedition.io.Connector.open(+15) at org.ksoap2.transport.ServiceConnectionMidp.<init>(+11) at org.ksoap2.transport.HttpTransport.getServiceConnection(+11) at org.ksoap2.transport.HttpTransport.call(+51) at com.vxceed.xnappexpresssync.comm.WebserviceCall.call(+28) at com.vxceed.xnappexpresssync.comm.WebserviceCall.callServiceMethod(+112) at com.vxceed.xnappexpresssync.utility.Generic.sendRequest(+22) at com.vxceed.xnappexpresssync.main.Authentication.authenticateUser(+77) at app.ui.ServerSync.sendServerRequest(+127) at app.ui.LoginScreen.authenticateUser(+9) at app.ui.LoginScreen.isLoginValidate(+76) at app.ui.LoginScreen.keyPressed(+48) at app.ui.MainAppScreen$Clean.run(+33) at java.util.TimerThread.mainLoop(+237) at java.util.TimerThread.run(+4)
是您的原始应用程序签名? – 2012-02-14 04:57:33
不,但第二个应用程序是在netbeans中创建的,奇怪的是,当我添加在eclipse中创建的jar并在NetBeans中运行它时,eclipse发出此错误时它工作正常。 – Mal 2012-02-16 10:03:21