我打電話異常,如果如下所示運行時異常空作爲參數傳遞給函數
if (messageString !=null) {
throw new org.jaffa.exceptions.ApplicationExceptions(
new com.mirotechnologies.task.core.domain.exceptions.TaskException(
com.mirotechnologies.task.core.domain.exceptions.TaskException.MANDATORY_FIELD,
messageString
)
);
}
的「messageString」不爲空傳遞「messageString」作爲參數時(I必須寫自從其內部的AOP片段以來類的完整路徑)
如果messageString
不是null
並且適當地顯示消息,那麼它工作正常。
但是,當它是null
,它實際上是在異常話說拋出運行時錯誤
undefined argument 'messageString' at : throw new org.jaffa.exceptions.ApplicationExceptions(new com.mirotechnologies.task.core.domain.exceptions.TaskException(com.mirotechnologies.task.core.domain.exceptions.TaskException.MANDATORY_FIELD, messageString));
無法調試這一點,因爲其內部AOP,也不能肯定它爲什麼走循環,如果內它的空 - 可能是其對TaskException構造函數的模糊null參數的編譯器問題?
這裏是內部TaskException的構造函數聲明
public TaskException(String propertyName, Object parameter0) {
this(propertyName, new Object[] {parameter0});
}
public TaskException(String propertyName, Object[] parameters) {
super(propertyName, parameters);
}
我是否需要添加通過在java中messageString
片斷
更新當鑄:我添加了一個鑄造(對象)messageString時拋出Exception並且拋出錯誤,現在不能將'void'強制轉換爲java.lang.Object - 爲什麼它是'void',它不應該進入循環,因爲messageString是null?
最初第一行被聲明爲java.lang.String messageString = null;
是和多數民衆的權利我有傳入構造消息時創建新對象。謝謝!! –
嘿,它現在拋出異常「位置0的空數組初始化」,我認爲最好的出路可能是將它設置爲某個值X代表整個代碼中爲空,並且實際上不使用'null'字符串值 –