我自己建的虚拟目录是defaultroot:应该是http://localhost:8080/defaultroot 若执行http://localhost:8080/defaultroot/index.jsp,从jsp跳转到servlet文件执行时,它会连接到http://localhost:8080/webapp.sampleservlet,(报错:webapp.sampleservlet is invalible),而不是http://localhost:8080/defaultroot/webapp.sampleservlet,这则么解决?
web.xml则么配呢?
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
这些代码具体社么意思?
有谁能具体解释一下吗?
如:invoker社么意思?所有含有servlet的应用程序都这么写吗?
<servlet>
<servlet-name>存放servlet的目录名</servlet-name>
<servlet-class>存放servlet的目录名</servlet-class>
</servlet>
<servlet>
<servlet-name>yourServletName</servlet-name>
<servlet-class>你放那就写哪</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>yourServletName</servlet-name>
<url-pattern>/SendMailServlet</url-pattern>
</servlet-mapping>
http://localhost:8080/mywebs/yourServletName
试试吧
改成:http://localhost:8080/mywebs/servlet/我的servlet名
<servlet-mapping></servlet-mapping>
若执行http://localhost:8080/defaultroot/index.jsp,从jsp跳转到servlet文件执行时,它会连接到http://localhost:8080/webapp.sampleservlet,(报错:webapp.sampleservlet is invalible),而不是http://localhost:8080/defaultroot/webapp.sampleservlet,这则么解决?
对于那个调用,应该是你在写调用路径时用了绝对路径,改成相对路径就可以了。
不过你的severlet怎么叫webapp.sampleservlet?
那个class是不是sampleservlet.class?
如果是,将他放在你defaultroot的WEB-INF/classes目录下然后在web.xml这样配置:
<servlet>
<servlet-name>sampleSeverlet</servlet-name>
<servlet-class>sampleservlet</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>sampleSeverlet</servlet-name>
<url-pattern>/toSeverlet/*</url-pattern>
</servlet-mapping>
然后用http://localhost:8080/defaultroot/toSeverlet来调用