警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:appName' did not find a matching property.
这个问题未明确.是不是跟Question 1的配置有关系未确定.不过看到警告就头疼.谁知道原因请告诉我.看字面意思是没有找到一个属性 source,从而无法将其赋值为...... Question 4、Struts版本问题
org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authenticationProcessingFilter' defined in file [D:\workspace\eclipse.birt.231\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\gzcdcWeb\WEB-INF\classes\ie\appContext-security.xml]: Cannot resolve reference to bean 'authenticationManager' while setting bean property 'authenticationManager'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'authenticationManager' defined in file [D:\workspace\eclipse.birt.231\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\gzcdcWeb\WEB-INF\classes\ie\appContext-security.xml]: Cannot resolve reference to bean 'daoAuthenticationProvider' while setting bean property 'providers' with key [0];
.....
这是Spring自初始化去查找bean的问题,通过Debug后发现缺少类 javax.transaction.TransactionManager,一想这不就是javaee.jar中的类嘛.怎么会没有呢.
再细想一下,当然是没有咯...Tomcat6只是一个Web容器,不需要去实现全部JavaEE标准.于是我将javaee.jar放到了${CATALINA_HOME}/lib下...这样肯定能找到类了.于是Spring初始化正常了.
呵呵,还没完呢.
Question 7、Tomcat与JavaEE 访问初始页面,直接报错,一大堆.
org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
javax.servlet.ServletException: javax.servlet.jsp.tagext.TagAttributeInfo.<init>(Ljava/lang/String;ZLjava/lang/String;ZZLjava/lang/String;ZZLjava/lang/String;Ljava/lang/String;)V
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:275)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:135)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
....
这是什么问题呢,分析后知道是加载类版本出现冲突了.但是怎么会冲突呢,后来锁定了doFilter类,
发现${CATALINA_HOME}/lib中自带一个servlet-api.jar,里面正好是javaee.jar中servlet相关的类簇.
于是想当然的认为servlet-api.jar是javaeye.jar的子集.当然确实是子集,不过版本和使用环境有差别.
删掉了Servlet-api.jar后,Tomcat提示无法启动,想了一下.采用了比较变态的招数.