كيفية تعيين بريمج اضافية للحصول على معلومات المسار مع getPathInfo()

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

  •  02-07-2019
  •  | 
  •  

سؤال

لدي مشكلة حيث هر هو علاج إضافي مسار المعلومات كجزء من بريمج اسم.هذا هو كسر مجموعة من راحة وظائف في webapp (نستخدم إضافية مسار المعلومات بدلا من ?name=أزواج قيمة بالنسبة الزاحف روابط ودية).

كان يعمل بشكل صحيح من قبل ، ولكنها اندلعت بعد إضافة صريحة تعيينات وإزالة Invoker بريمج التي سبق استخدامها لخدمة لدينا servlets.على سبيل المثال النظر في الرابط التالي:

http://mydomain.com/servlet/MyServlet/param1/param2/param3

MyServlet كان يسمى بشكل صحيح ، "/param1/param2/param3" تم إرجاعها بواسطة getPathInfo() على HttpServletRequest.

الآن يبدو أن القط يحاول تحميل MyServlet/param1/param2/param3 كما بريمج:

[23/سبتمبر/2008:16:44:23 -0700] "الحصول على /servlet/MyServlet/param1/param2/param3 HTTP/1.0" 404

هنا هو الطريقة التي يتم تحديدها وتعيينها في web.xml فقط ضرب "http://mydomain.com/servlet/MyServlet"يعمل بشكل جيد.

<servlet>
  <servlet-name>MyServlet</servlet-name>
  <servlet-class>com.myclass.etcetera.MyServlet</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>MyServlet</servlet-name>
  <url-pattern>/servlet/MyServlet</url-pattern>
</servlet-mapping>
هل كانت مفيدة؟

المحلول

تحتاج إلى الخريطة /servlet/MyServlet/*

كنت في عداد المفقودين زائدة "/*".

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