大侠们,我点击<a href="BbssectorAction!list.action">论坛</a>的时候,触发到
package com.news.action;import java.util.HashMap;
import java.util.List;
import java.util.Map;import com.news.dao.BbssectorDAO;
import com.news.dao.impl.BbssectorDAOImpl;
import com.news.model.Bbssector;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;public class BbssectorAction extends ActionSupport{
private int id;
private Bbssector bbssector;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Bbssector getBbssector() {
return bbssector;
}
public void setBbssector(Bbssector bbssector) {
this.bbssector = bbssector;
}
public String execute() throws Exception
{
return SUCCESS;
}
public String list() throws Exception
{
String result="";
BbssectorDAO bbssectorDAO=new BbssectorDAOImpl();
List list=bbssectorDAO.searchAllBbssector();
System.out.println(list);
if(list!=null)
{
ActionContext act=ActionContext.getContext();
Map map=act.getSession();
map.put("sector", list);
result="sector";
}
else
{
result="error";
}
return result;
}
}
struts.xml的配置文件如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd"><struts>
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<constant name="struts.devMode" value="false" />
<constant name="struts.multipart.saveDir" value="/tmp"/> <package name="default" namespace="/" extends="struts-default">
<action name="BbssectorAction" class="com.news.action.BbssectorAction">
<result name="sector">/sector.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package></struts>
点击的时候抛出:
HTTP Status 500 -type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionjava.lang.NullPointerException
org.apache.struts2.impl.StrutsActionProxy.getErrorMessage(StrutsActionProxy.java:69)
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:500)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:434)
com.news.action.util.FCKFilter.doFilter(FCKFilter.java:21)note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.
Apache Tomcat/6.0.35
不知怎么解决,求大侠指点strutsaction
package com.news.action;import java.util.HashMap;
import java.util.List;
import java.util.Map;import com.news.dao.BbssectorDAO;
import com.news.dao.impl.BbssectorDAOImpl;
import com.news.model.Bbssector;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;public class BbssectorAction extends ActionSupport{
private int id;
private Bbssector bbssector;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Bbssector getBbssector() {
return bbssector;
}
public void setBbssector(Bbssector bbssector) {
this.bbssector = bbssector;
}
public String execute() throws Exception
{
return SUCCESS;
}
public String list() throws Exception
{
String result="";
BbssectorDAO bbssectorDAO=new BbssectorDAOImpl();
List list=bbssectorDAO.searchAllBbssector();
System.out.println(list);
if(list!=null)
{
ActionContext act=ActionContext.getContext();
Map map=act.getSession();
map.put("sector", list);
result="sector";
}
else
{
result="error";
}
return result;
}
}
struts.xml的配置文件如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd"><struts>
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<constant name="struts.devMode" value="false" />
<constant name="struts.multipart.saveDir" value="/tmp"/> <package name="default" namespace="/" extends="struts-default">
<action name="BbssectorAction" class="com.news.action.BbssectorAction">
<result name="sector">/sector.jsp</result>
<result name="error">/error.jsp</result>
</action>
</package></struts>
点击的时候抛出:
HTTP Status 500 -type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionjava.lang.NullPointerException
org.apache.struts2.impl.StrutsActionProxy.getErrorMessage(StrutsActionProxy.java:69)
com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:185)
org.apache.struts2.impl.StrutsActionProxy.prepare(StrutsActionProxy.java:63)
org.apache.struts2.impl.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:39)
com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58)
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:500)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:434)
com.news.action.util.FCKFilter.doFilter(FCKFilter.java:21)note The full stack trace of the root cause is available in the Apache Tomcat/6.0.35 logs.
Apache Tomcat/6.0.35
不知怎么解决,求大侠指点strutsaction
解决方案 »
- 急急
- 学习swt designer入门求教
- 为什么我的坦克不能移动?
- 关于转发和重定向
- java
- 82年出生是不是已经是一个程序员了,工作不了几年了?大家都多大了?
- WARN PageContextImpl:193 - Internal error flushing the buffer in release() 救命啊!
- 求助!将外部数据导入到oracle中的问题!
- 请问,tomcat是什么服务器
- httpclient做抓取,最后一步的抓取是感觉是webservice,请求报文是SOAP类型的xml
- Java servlet 显示多张图片的问题
- 新手安装Java ee sdk出错,请求大家帮助。
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.dispatcher.FilterDispatcher;
@SuppressWarnings("deprecation")
public class FCKFilter extends FilterDispatcher {
public void doFilter(ServletRequest req,ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
String URI = request.getRequestURI();
String[] uriArray = URI.split("/ckfinder/core/connector/java/*/");
int arrayLen = uriArray.length;
if (arrayLen >= 2) {
chain.doFilter(req, res);
}else {
super.doFilter(req, res, chain);
}
}
}
<filter>
<filter-name>struts2</filter-name>
<filter-class>
com.news.action.util.FCKFilter.doFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
设置成你自己定义的过滤器
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>ConnectorServlet</servlet-name>
<servlet-class>com.ckfinder.connector.ConnectorServlet</servlet-class>
<init-param>
<param-name>XMLConfig</param-name>
<param-value>/WEB-INF/config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>ConnectorServlet</servlet-name>
<url-pattern>
/ckfinder/core/connector/java/connector.java
</url-pattern>
</servlet-mapping>
<filter>
<filter-name>FileUploadFilter</filter-name>
<filter-class>com.ckfinder.connector.FileUploadFilter</filter-class>
<init-param>
<param-name>sessionCookieName</param-name>
<param-value>JSESSIONID</param-value>
</init-param>
<init-param>
<param-name>sessionParameterName</param-name>
<param-value>jsessionid</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>FileUploadFilter</filter-name>
<url-pattern>
/ckfinder/core/connector/java/connector.java
</url-pattern>
</filter-mapping>
<session-config>
<session-timeout>10</session-timeout>
</session-config>
<filter>
<filter-name>struts2</filter-name>
<filter-class>com.news.action.util.FCKFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
</web-app>
package com.news.action.util;import java.io.IOException; import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.dispatcher.FilterDispatcher;
@SuppressWarnings("deprecation")
public class FCKFilter extends FilterDispatcher {
public void doFilter(ServletRequest req,ServletResponse res, FilterChain chain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req;
String URI = request.getRequestURI();
String[] uriArray = URI.split("/ckfinder/core/connector/java/*/");
int arrayLen = uriArray.length;
if (arrayLen >= 2) {
chain.doFilter(req, res);
}else {
super.doFilter(req, res, chain);
}
}
}
因为我要用到ckfinder,ckeditor来上传图片和在线编辑,所以弄了个这样的过滤器,不知这个有没有问题。