在我的j2me應用程序中,我收到上面的異常(java.lang.securityException not allowed to open connection
)。我的函數的流程就像首先我在構造函數中打開接收消息的套接字,然後發送SMS,我在方法體中打開端口,在我的手機上MIDlet請求許可發送SMS,如果按NO,它會顯示安全性異常短信發送沒有被拒絕,沒關係。但是當它們在同一個MIDlet中並且第二次執行這個動作時,它在構造函數中打開接收端口時會產生異常,如java.lang.securityException not allowed to open connection
。目前我還沒有看到任何允許第二次發送短信的權限。我的構造函數和短信發送代碼如下:java.lang.securityException不允許打開連接j2me
//Constructor
public ServerContactRetriever(MainMidlet parent, Language lang) {
try {
this.language = lang;
this.parent = parent;
recvCon = (MessageConnection) Connector.open(RECV_URL); //open receiving port
recvCon.setMessageListener(this);
} catch (Exception ex) {
parent.dispErrorMessage(language.access_denied_disp);
parent.alertShow(language.access_denied_alert);
}
}
//METHOD
//Request restore contacts from server
private void sendRestoreRequest() {
try {
MessageConnection msgCon = (MessageConnection) Connector.open(SEND_URL);
TextMessage msg = (TextMessage) msgCon.newMessage(MessageConnection.TEXT_MESSAGE);
msg.setAddress(SEND_URL);
msg.setPayloadText("set payload here");
msgCon.send(msg);
msgCon.close();
} catch (Exception ex) {
try {
parent.alertShow(language.sms_error_alert);
parent.dispErrorMessage(language.sms_error_disp);
recvCon.close();
} catch (Exception ex1) {
}
}
}
我正在使用WTK和MIDP 2.0。 檢查諾基亞設備。 首先我想知道可能會有關閉MessageConnection
端口的問題,但我也嘗試過,並且顯示相同的錯誤。而關於短信發送和我選擇否,它工作正常,如果我只是嘗試發送短信,並選擇沒有多少次,我想要的,它仍然留在midlet沒有任何例外。謝謝
那麼這是因爲已經打開應用程序內的連接,並正確處理它,它工作得很好。但是你所說的與這件事無關! – Saqib
@Saqib你能告訴我你是如何處理它的,我在消息傳遞應用程序中有同樣的例外。 –
我不得不明確地捕獲這兩個異常,我不知道它爲什麼不能用於通用EXCEPTION事件,但必須進行單獨的異常處理,例如針對SMS的SecurityException和針對消息端口的IOException。希望你弄明白! – Saqib