在IBM i上,作業日誌JT400應用程序通過套接字連接到服務器作業,通常,這些作業中有一堆「預先啓動」,正在等待連接。如果你不習慣5250接口,這可能很難導航
這裏是一個JT400程序,它爲你獲取作業日誌信息如果你在同一個會話中運行這個程序,應該看到有關導致此問題的詳細信息。
import java.util.*;
import com.ibm.as400.access.*;
public class TestJobLog {
public static void main(String[] args) {
int i = 0;
try {
AS400 system = new AS400();
JobLog jobLog = new JobLog(system);
// what attributes?
jobLog.clearAttributesToRetrieve();
jobLog.addAttributeToRetrieve(JobLog.MESSAGE_WITH_REPLACEMENT_DATA);
jobLog.addAttributeToRetrieve(JobLog.MESSAGE_HELP_WITH_REPLACEMENT_DATA);
// load the messages
jobLog.load();
// Create a list and subset it
Enumeration list = jobLog.getMessages();
System.out.println("There are " + Integer.toString(jobLog.getLength()) + " messages.");
while (list.hasMoreElements()) {
i++;
QueuedMessage message = (QueuedMessage) list.nextElement();
String text = message.getID() +
" " + message.getType() +
" " + message.getText() + "\n" +
" " + message.getMessageHelpReplacement() + "\n";
System.out.println(Integer.toString(i) + " " + text);
}
jobLog.close();
System.exit(0);
} catch (Exception e) {
System.out.println(e);
}
}
}
這些消息中沒有什麼有趣的:-(。 2最後是: 11 CPF5C61 4客戶端請求 - 運行程序QSYS/QWCRTVCA。 12 CPF5C61 4客戶端請求 - 運行程序QGY/QGYOLJBL。 – agad
這有點像堆棧跟蹤。這裏有很多東西,但並不是所有東西都直接影響你的問題。請特別注意CPF5035。 「幫助」文本應該包含失敗域的詳細信息。 –
...並記住有多個服務器作業正在等待JT400連接。我很確定每個'=新的AS400()'連接到不同的服務器作業。所以我強調,你需要探索失敗的同一個過程的工作日誌。如果作業日誌消息看起來太多,請將作業名稱提供給IBM i管理員,她可以從房屋的綠色屏幕一側查看作業日誌。 –