我已经为我的应用程序手动configuration了web.xml 。 现在,我正在运行我的应用程序时遇到问题。 我试图从我的jsp页面访问我的servlet 。 但是,由于page not found ,导致错误。 这些servlet放在文件夹位置下面 <application folder>/WEB-INF/classes/<package> 那么, url-pattern和servlet-mapping的条目应该是什么。 所以, servlet可以通过URL访问。
我有一个有关REST的urldevise的问题。 我在这里find了一些相关的post: 不同的RESTful表示相同的资源 ,在这里: RESTful URL GET资源由不同的领域,但答复是不是很清楚最佳做法是什么,为什么。 这是一个例子。 我有代表“用户”资源的RESTurl。 我可以通过一个ID或一个电子邮件地址来获得一个用户,但是URL表示对于两者都是一样的。 通过大量的博客和书籍,我发现人们以许多不同的方式来做这件事。 例如 阅读这本书,并在一个地方stackoverflow(我似乎无法find链接) GET /users/id={id} GET /users/email={email} 在很多博客上阅读这个练习 GET /users/{id} GET /users/email/{email} 查询参数通常用于过滤由url表示的资源的结果,但我也看到了这种做法 GET /users?id={id} GET /users?email={email} 我的问题是,在所有这些做法中,哪一个最适合开发者使用apis,为什么? 我相信在REST的网页devise和命名规则方面没有任何规定,但我只是想知道应该采取哪条路线来帮助开发人员更好地理解API。 所有帮助赞赏!
当我们引用path时,两个星号之间的区别是什么,而不是一个星号? 早些时候我正在debugging我的Spring 3项目。 我试图添加一个.swf使用 <spring:url var="flashy" value="/resourceshttp://img.dovov.comflash.swf"/> 用我的web.xml的ResourceServlet看起来像 <servlet-name>Resource Servlet </servlet-name> <url-pattern>/resources/*</url-pattern> 但不幸的是我得到这个错误: WARN org.springframework.js.resources.ResourceServlet – An attempt to access a protected resource at http://img.dovov.comflash.swf was disallowed. 我发现它真的很奇怪,因为我的images文件夹中的所有图片都被访问过,但是我的.swf怎么被“保护”? 之后,我决定将/resources/*更改为/resources/** ,最后运行。 我的问题是…为什么?
我在我的JSF应用程序中使用Servletfilter 我的应用程序中有三组网页 所以我想在我的Servletfilter中检查这个部分页面的身份validation 我的文件夹 /Admin/ *.xhtml /Supervisor/*.xhtml /Employee/*.xhtml 和我写web.xml一样 <filter> <filter-name>LoginFilter</filter-name> <filter-class>com.ems.admin.servlet.LoginFilter</filter-class> </filter> <filter-mapping> <filter-name>LoginFilter</filter-name> <url-pattern>/Employee/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>LoginFilter</filter-name> <url-pattern>/Admin/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>LoginFilter</filter-name> <url-pattern>/Supervisor/*</url-pattern> </filter-mapping> 但请求像 http://localhost:8080/EMS2/faces/Html/Admin/Upload.xhtml 不进入filter。 我必须为这3个文件夹提供安全性 如何解决这个问题呢 ?
熟悉的代码: <servlet-mapping> <servlet-name>main</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>main</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> 我的理解是, /*映射到http://host:port/context/* 。 怎么样? 它肯定不会只映射到http://host:port/context root。 实际上,它将接受http://host:port/context/hello ,但拒绝http://host:port/context/hello.jsp 。 任何人都可以解释如何http://host:port/context/hello映射?