لماذا لم تجد Cometserverservlet من CometserVervlet من Rocket Package؟

StackOverflow https://stackoverflow.com/questions/4081631

  •  28-09-2019
  •  | 
  •  

سؤال

لديّ تطبيق GWT مشترك يستخدم (يحاول) الصاروخ الصاروخ لتنفيذ cometserverservlet. بعد أن قمت بتسجيل servlet في web.xml و app.gwt.xml ، مثل هذا:

app.gwt.xml:

<servlet path="/server" class="myapp.server.MyCometServlet"/>

web.xml

<servlet>
 <servlet-name>myCometServlet</servlet-name>
 <servlet-class>myapp.server.MyCometServlet</servlet-class>
</servlet>

<servlet-mapping>
 <servlet-name>myCometServlet</servlet-name>
 <url-pattern>/myapp/server</url-pattern>
</servlet-mapping>

من الواضح أن Jetty لا تجد Cometserverservlet الذي يمتد منه MyCometServlet:

تحذير: خطأ في بدء تشغيل معالجات java.lang.noclassdeffounderror

سبب: java.lang.classnotfoundexception: Rocket.Remoting.Server.comet.comtserverservlet

هذا غريب ، لأنني أضفت جرة الصواريخ إلى مشروعي.

هل يمكن لأحد أن يشرح لماذا حدث هذا الخطأ؟

يمكنني أن أفهم ما إذا كنت "سجلت" servlet بطريقة خاطئة أو شيء من هذا ، ولكن في أي نقطة Jetty (أو من؟) تبحث عن cometserverservlet وتفشل في العثور عليها؟

هل كانت مفيدة؟

المحلول

ستزيل إضافة الجرة إلى مشروعك (على سبيل المثال في بعض IDE) أخطاء التجميع ، لأنه يمكن العثور على الجرة في وقت الترجمة.

لكن الرصيف يحتاج إلى المكتبة في وقت التشغيل ، والطريقة المعتادة لتوفيرها ، هي وضعها في WEB-INF/lib مجلد مشروعك.

بالطبع ، تأكد من إعادة نشر التطبيق بعد ذلك (على سبيل المثال ، إذا كنت تستخدم وضع dev ، انقر فوق تحديث في عرض "وضع التطوير").

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top