Jersey がライブラリをスキャンするのにかかる時間が異常に長いため、私のアプリケーション サービスはウォームアップ要求を開始したり応答したりできません。
アプリケーションを作成し、ジャージのリソースのすべてのパスをハードコーディングしました。
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.livily.rest.JerseyApplication</param-value>
</init-param>
Jersey Applicationにはすべてのクラスがあります
public Set<Class<?>> getClasses()
{
Set<Class<?>> s = new HashSet<Class<?>>();
s.add(com.livily.rest.visitor.UserRatingUtil.class);
}
ただし、ジャージーは多くのプロバイダーをスキャンしています
Mar 8, 2013 3:39:40 PM com.sun.jersey.core.spi.component.ProviderServices getServiceClasses
CONFIG: Provider found: class com.sun.jersey.server.impl.model.parameter.multivalued.StringReaderProviders$StringConstructor
50~100回くらいやってから
Mar 8, 2013 3:39:41 PM com.sun.jersey.server.impl.modelapi.annotation.IntrospectionModeller createResource
FINEST: A new abstract resource created by IntrospectionModeler: AbstractResource("/current-status", - CurrentStatus: 1 constructors, 0 fields, 0 setter methods, 1 res methods, 0 subres methods, 0 subres locators )
それぞれについて
合計でかかる時間は約 4 ~ 10 秒ですが、appengine は読み込みをすばやく完了することを期待しているため、これを好みません。そうしないと、奇妙な500エラーが発生し始めます(静的ファイルでも)。
私は困惑しています。どんな助けでも大歓迎です。