كيفية تعيين بريمج اضافية للحصول على معلومات المسار مع getPathInfo()
سؤال
لدي مشكلة حيث هر هو علاج إضافي مسار المعلومات كجزء من بريمج اسم.هذا هو كسر مجموعة من راحة وظائف في webapp (نستخدم إضافية مسار المعلومات بدلا من ?name=أزواج قيمة بالنسبة الزاحف روابط ودية).
كان يعمل بشكل صحيح من قبل ، ولكنها اندلعت بعد إضافة صريحة تعيينات وإزالة Invoker
بريمج التي سبق استخدامها لخدمة لدينا servlets.على سبيل المثال النظر في الرابط التالي:
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/*
كنت في عداد المفقودين زائدة "/*".