[英]plsql remote debug breakpoints not working
我在調試pl sql代碼時遇到了奇怪的情況。
我將sql開發人員設置為偵聽調試連接。 在Java代碼中,我使用以下代碼附加調試器:
CallableStatement cstmt = null;
try {
cstmt = getConnection().prepareCall("begin DBMS_DEBUG_JDWP.CONNECT_TCP( '10.1.1.17', 4000); end;");
cstmt.execute();
} catch (SQLException e) {
e.printStackTrace();
} finally {
closeStatement(cstmt);
}
調試器成功連接,即我可以在Run Manager
sql developer中看到該連接存在。
盡管已創建連接,調試器仍無法正常工作。 有時斷點未打上綠色標記,有時卻打勾,但斷點仍然不起作用。 無論如何,調試器不會在中斷時停止,被成功調用的過程就像沒有中斷一樣執行。
我放下休息的軟件包進行調試編譯,“ Start Debugger Option
設置為“ Step Over
。 我也嘗試以相同的方式對Sql Developer
3.2.2和3.0.6、3.0.4進行操作。 我從'Sql Developer'和應用程序使用的用戶是相同的,並且該用戶具有調試特權( DEBUG CONNECT SESSION
, DEBUG ANY PROCEDURE
)。 我沒有辦法使它工作。
接下來要嘗試什么,如何診斷這個問題?
我發現了根本問題。 它與oracle無關,而與應用程序服務器和數據庫連接有關。 我將調試器附加到一個bean中,並在另一個bean中調用plsql過程。 因為他們在同一筆交易中,所以我認為應該共享連接,但事實並非如此。 因此,我只是將調試器附件移到了調用過程的bean上,現在可以正常工作了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.