标签: web-inf

使用条纹将 JSP 文件移动到 WEB-INF 目录时出错

我有以下条纹 ActionBean:

package myapp;

import net.sourceforge.stripes.action.*;

public class WelcomeActionBean extends MyAppActionBean {
    @DefaultHandler
    public Resolution view() {
        return new ForwardResolution("/welcome.jsp");
    }
}
Run Code Online (Sandbox Code Playgroud)

当我在浏览器中加载/myapp/Welcome.action 时,会显示welcome.jsp 的内容。

但是,当我将welcome.jsp 移动到/WEB-INF/jsp/welcome.jsp 并更改ForwardResolution 参数以反映该更改时,即:

return new ForwardResolution("/WEB-INF/jsp/welcome.jsp");
Run Code Online (Sandbox Code Playgroud)

加载 /myapp/Welcome.action 时出现以下错误:

net.sourceforge.stripes.exception.ActionBeanNotFoundException: Could not locate an ActionBean that is bound to the URL [/Welcome.action]. Commons reasons for this include mis-matched URLs and forgetting to implement ActionBean in your class. Registered ActionBeans are: {/controller/DefaultView.action=class net.sourceforge.stripes.controller.DefaultViewActionBean, /myapp/MyApp.action/=class myapp.MyAppActionBean, /myapp/Welcome.action/=class myapp.WelcomeActionBean, /controller/DefaultView.action/=class net.sourceforge.stripes.controller.DefaultViewActionBean, /myapp/MyApp.action=class myapp.MyAppActionBean, /myapp/Welcome.action=class myapp.WelcomeActionBean}
    net.sourceforge.stripes.controller.AnnotatedClassActionResolver.getActionBean(AnnotatedClassActionResolver.java:341)
    net.sourceforge.stripes.controller.NameBasedActionResolver.getActionBean(NameBasedActionResolver.java:264) …
Run Code Online (Sandbox Code Playgroud)

java stripes web-applications web-inf

3
推荐指数
1
解决办法
2605
查看次数

通过将复合组件放置在 /WEB-INF 内来防止直接访问复合组件

我正在尝试在我的 Web 应用程序中定义一些复合组件。根据我阅读的教程,我必须将 xhtml 文件放置在位于 webcontent 的资源文件夹中。这个解决方案是有问题的,因为它会使这些文件可供公众通过 URL 访问。有没有办法将此组件放入 web-inf 文件夹中,并使 jsf 查找那里的文件?如果没有,是否有其他方法可以避免直接访问?

谢谢。

PS:我已经研究过这个答案,如果我正确理解了 BalusC 的答案,我打算做的事情是可能的。

security jsf web-inf composite-component jsf-2

3
推荐指数
1
解决办法
1760
查看次数

Tomcat6忽略web-inf/lib

简介: Tomcat6无法识别WebRoot/WEB-INF/lib中的ojdbc14.jar.我想我不需要配置任何东西,只需将.jar文件放在那里就可以了.

细节:

我已经创建了一个Web应用程序并将ojdbc14.jar放在WEB-INF/lib文件夹中.当我启动Tomcat6并访问一个index.jsp页面,该页面创建一个启动与我的oracle数据库连接的对象时,会出现错误,指出"无法加载JDBC驱动程序类'oracle.jdbc.OracleDriver'".显然Tomcat6无法识别web-inf/lib/ojdbc14.jar中的'oracle.jdbc.OracleDriver'类.

我做了一些研究并推测出以下原因:

  1. Tomcat6有一些不同的加载类的方法.他们在发布的每个版本中都会更改它 要么
  2. Tomcat6有一个错误.我在Tomcat3中发现了类似的错误(请参阅https://bugs.eclipse.org/bugs/show_bug.cgi?id=249044).但我怀疑这个bug可能会持续这么多版本.
  3. Tomcat6已将ojdbc14.jar的内容包含在自己的lib文件中,并且再次将其添加到web-inf/lib会产生冲突.我不相信这一点,因为从WEB-INF/lib删除ojdbc14.jar后,问题仍然存在.

这是我的Web应用程序结构:

  • 的WebRoot
    • WEB-INF
        • '启动连接的类'
      • LIB
        • 为ojdbc14.jar
    • 的index.jsp

错误:

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'oracle.jdbc.OracleDriver'
    at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:766)
    at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
    at com.demo6.DataSourceExample.getConnection(DataSourceExample.java:18)
    at org.apache.jsp.index_jsp._jspService(index_jsp.java:63)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
    at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassNotFoundException: oracle.jdbc.OracleDriver
    at …
Run Code Online (Sandbox Code Playgroud)

java tomcat jdbc web-inf classloader

2
推荐指数
1
解决办法
5128
查看次数

Eclipse报告web.xml文件不存在,即使它确实存在

我有一个GWT项目.我创建了web.xml并将其放在webapp/WEB-INF,war/WEB-INF以及war /中.但Eclipse不断向我提出错误

The web.xml file does not exist
Run Code Online (Sandbox Code Playgroud)

当我右键单击错误并查看属性时,我看到此条目

In folder: <myproject>/war
Run Code Online (Sandbox Code Playgroud)

虽然我把文件放在那里,为什么Eclipse会报告错误?

gwt war web-inf google-eclipse-plugin

2
推荐指数
1
解决办法
2510
查看次数

在WEB-INF目录下移动JSP的问题

当我将JSP文件与WEB-INF/web /目录下的CSS和JS文件一起移动时,我遇到了问题.问题是,当JSP页面加载时,它不会加载CSS和JS文件.如果您对此有任何疑问,请提供帮助.

谢谢

欧麦尔

java jsp struts web-inf java-ee

1
推荐指数
1
解决办法
6497
查看次数