Tag: web.xml

Spring MVC Web应用程序:应用程序上下文启动两次

我正在开发一个Spring MVC REST API。 一切正常,这很好,但我从日志中注意到,每次重新启动应用程序时,applicationContext都会加载两次:一次是tomcat加载war文件,第二次是第一次访问web应用程序时客户。 我举几个例子: 我启动tomcat后: Apr 11, 2013 10:14:35 AM org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/6.0.32 Apr 11, 2013 10:14:36 AM org.apache.catalina.core.ApplicationContext log INFO: Initializing Spring root WebApplicationContext 2013-04-11 10:14:36 INFO ContextLoader:273 – Root WebApplicationContext: initialization started 2013-04-11 10:14:36 INFO XmlWebApplicationContext:510 – Refreshing Root WebApplicationContext: startup date [Thu Apr 11 10:14:36 […]

在Spring Servlet项目的web.xml中加载contextConfigLocation的顺序

假设我有一个Spring Java项目,我正在尝试将其配置为Web服务器servlet。 这是web.xml文件的精简版本: contextConfigLocation /WEB-INF/spring/generalApplicationContext.xml my-servlet org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/spring/specificApplicationContext.xml 1 my-servlet /foo/* 这里需要注意的关键是我已经指定了两个要加载的XML文件。 一个是我的整个应用程序的通用,而另一个是特定于“my-servlet”servlet。 对于只有一个servlet映射的设置,这没有意义。 但是,我的项目有多个servlet映射,每个都有特定的Spring设置。 我的问题: Spring将首先加载哪个contextConfigLocation? 它是generalApplicationContext.xml还是specialApplicationContext.xml? 更重要的是,装载的顺序是否重要? 从我的调试工作来看,它似乎很明显,因为当我将一些独立的Spring配置从一个文件移动到另一个文件时,我得到了不同的错误。 注意:对于多个servlet映射是否使用多个弹簧配置是一个好的做法是值得商榷的。 使用XML配置而不是新的Java配置也是如此。 但这不是我在这里要问的问题。 让我们试着关注我的主要问题。

web.xml中的标记不会捕获java.lang.Throwableexception

我有一个用servlet和JSP开发的web应用程序。 如果我插入错误的参数,我将我的应用程序配置为抛出IllegalArgumentException 。 然后我以这种方式配置了我的web.xml文件: 404 /error.jsp java.lang.Throwable /error.jsp 当我出现404 error ,然后它工作并调用error.jsp ,但是当我上升java.lang.IllegalArgumentException ,它不起作用,我有一个blank page而不是error.jsp 。 为什么? 服务器是Glassfish,日志显示IllegalArgumentException上升了。

如何在一个Spring应用程序中的web.xml中注册多个servlet

我想在我的Spring web.xml中定义两个servlet – 一个用于应用程序html / jsp页面,另一个用于将由外部应用程序调用的Web服务。 这是web.xml: myservlet org.springframework.web.servlet.DispatcherServlet 1 myservlet *.htm contextConfigLocation WEB-INF/user-service-servlet.xml user-webservice org.apache.cxf.transport.servlet.CXFServlet 1 user-webservice /UserService/* 如果我有myservlet自己在文件中使用DispatcherServlet,它工作正常。 如果我的user-webservice带有context-param,那就是它的配置文件(user-service-servlet.xml),它可以正常工作。 但是,如果我同时在文件中,则myservlet不起作用,因为myservlet-servlet.xml文件未自动加载。 如果我删除了context-param,那么myservlet可以工作,但是user-webservice不能正常工作,因为它没有加载配置文件(user-service-servlet.xml)。 如何定义两个servlet并加载它们的两个配置文件?

如何使用子文件夹作为web.xml欢迎目录

我想为Google App Engine配置我的web.xml,但我的配置不起作用。 我想用WebApp/index.html更改默认的WebApp/index.html 。 这是web.xml : App bg.app.AppServlet App /WebApp/* WebApp/index.html

Spring应用程序上下文:访问web.xml context-params?

问候 , 有没有办法从web.xml context-param获取值到Spring上下文? 例如,我将web.xml中的值定义为: compass-index file:///home/compass/index 我想将该值分配给bean属性: ${from web.xml context-param?} 提前致谢?

如果url模式匹配多个servlet怎么办?

s1 /abc s2 /abc s3 /* 如果请求/ abc到来,将调用哪个servlet?为什么?

严重:ContainerBase.addChild:start:org.apache.catalina.LifecycleException:无法启动错误

当我尝试在Tomcat中运行我的应用程序时遇到此错误。 我已经检查过tomcat和java home的版本。 两者都使用java 6。 有丢失的jar子吗? 或者是我的web xml? 我没有使用任何maven工具。 SEVERE: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/ICard]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:618) at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:650) at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1582) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.NoClassDefFoundError: javax/xml/rpc/handler/soap/SOAPMessageContext at java.lang.ClassLoader.defineClass1(Native Method) […]

在web.xml中引用环境变量

我正在预先打包一个JSP web-app,它依赖于web.xml中的一些文件路径设置。 这些设置在打包时是未知的,因为它们引用了客户在部署整个应用程序(其中web-app是管理界面)时将设置的路径。 似乎在我的安装程序脚本中避免令牌和文件修改的最简单方法是向用户询问安装位置,将此位置设置为环境变量(例如JAVA_HOME),并让web.xml始终引用该变量。 有没有办法从web.xml中引用环境变量值? Google搜索引出了来自ejb xml文件的SETTING环境变量的J2EE方法。 这不是我想要的。

web.xml中的白名单安全性约束

我正在使用Tomcat作为我的Struts2应用程序。 web.xml有一些条目,如下所示: restricted methods /* PUT DELETE TRACE no_access /jsp/* no_access /myrrunner/* 如何更改以上列入黑名单的部分仅使用白名单部分…例如,我不需要将其他方法列入白名单,而是将其列入白名单,但我不确定将白名单列入白名单的语法以及将白名单列入白名单的方法。 对于我上面的web.xml片段,如果有人可以为xml以上提供whitelisitng计数器部分,我将不胜感激。 编辑:另外,我如何真正validation解决方案是否有效? 谢谢