问题
I am trying to remove .py extension from the url, I am using this tutorial: http://www.jython.org/jythonbook/en/1.0/SimpleWebApps.html
my web.xml is as follows:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
<servlet>
<servlet-name>PyServlet</servlet-name>
<servlet-class>org.python.util.PyServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>PyServlet</servlet-name>
<url-pattern>*.py</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>NewJythonServlet</servlet-name>
<servlet-class>NewJythonServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>NewJythonServlet</servlet-name>
<url-pattern>/NewJythonServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>NewJavaServlet</servlet-name>
<servlet-class>NewJavaServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>NewJavaServlet</servlet-name>
<url-pattern>/NewJavaServlet</url-pattern>
</servlet-mapping>
</web-app>
I have also tried putting /* in url mapping..but its giving error! Can someone guide me for this.
thanks
EDIT - 1
Here is what i get when i put /*
in url mapping:
HTTP Status 404 - /jythonapp/NewJythonServlet
type Status report
message /jythonapp/NewJythonServlet
description The requested resource (/jythonapp/NewJythonServlet) is not available.
Apache Tomcat/6.0.30
回答1:
Im wondering if the 'jythonapp' folder needs to be specified in the 'servlet-mapping' section.
EG:
<url-pattern>/jythonapp/NewJythonServlet</url-pattern>
(I don't think that's quite right but its been a while since I've used Tomcat. )
Im also thinking that the 'jythonapp' folder should be a sub of 'webapps'. --> http://www.sethanil.com/ot/10
What URL are you using for this test?
来源:https://stackoverflow.com/questions/8636156/how-to-remove-py-from-the-url-in-jython