私のスプリングコンフィグレーションファイルでは、静的ファクトリメソッドを使用してインスタンス化された1つのBeanを宣言しました。ファクトリメソッドは、いくつかのリモートサービスを呼び出します。ファクトリメソッドは、リモートサービスにアクセスできない場合はnullを返します。Springのファクトリメソッドからnullを返す
ファクトリメソッドがnullを返すとき、私の問題はすべて間違っています。およびスプリングの初期化に失敗しました。
ファクトリメソッドがリモートサービスを呼び出すことができない場合、私は本当にBeanをnullに設定する必要があります。次のように私の設定ファイルの
一部は次のとおりです。
<bean id="Helper" class="com.test.Helper">
<constructor-arg ref="myBean" />
</bean>
<bean id="myBean" class="com.test.Factory" factory-method="getBean" />
次のようにgetBean()メソッドは、次のとおりです。
Factory {
public static Bean getBean() throws Exception{
try {
//Invokes some Remote Services and does some processing
....
....
//returns bean object
}catch(Exception e) {
return null;
}
}
}
どのように私はこの問題を解決することができ、私を助けてください。そのような
スタックトレースといくつかのコードがありますか? – Ralph
stacktraceを提供 – Bozho
'null'を返しません。あなたはNullPointerExceptionsを取得し、あなたがSpringを間違って設定したか、またはサーバが利用できないことが原因であるかどうかを調べることができません。返される既定値については、Nullオブジェクトパターンを参照してください。 – artbristol