本人在测试Struts2.0中的表达式语言的时候,程序频频报空指针的错误,可是检查却好像并没有什么错误啊!还真是郁闷了,现在贴出来想和大家一起探讨一下:
首先是一个Book类:
package tutorial.model;
public class Book
{
private String isbn;
private String title;
private double price;
public Book()
{
}
public Book(String isbn,String title,dobule price)
{
this.isbn = isbn;
this.title = title;
this.price = price;
}
public String getIsbn()
{
return isbn;
}
public void setIsbn(String isbn)
{
this.isbn = isbn;
}
public double getPrice()
{
return price;
}
public void setPrice(double price)
{
this.price = price;
}
public String getTitle()
{
return title;
}
public void setTitle(String title)
{
this.title = title;
}
}
Action类: BookAction.java
package tutorial.action
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.SessionAware;
import org.apache.struts2.util.ServletContextAware;
import tutorial.model.Book;
import com.opensymphony.xwork2.ActionSupport;
public class OgnlAction extends ActionSupport implements ServletRequestAware,SessionAware,ServletContextAware
{
private static final long serialVersionUID = 1L;
private HttpServletRequest request;
private Map <String,String> session;
private ServletContext application;
private List <Book> books;
public void setServletRequest(HttpServletRequest request)
{
this.request = request;
}
@SuppressWarnings("unchecked")
public void setSession(Map session)
{
this.session = session;
}
public void setServletContext(ServletContext application)
{
this.application = application;
}
public List <Book> getBooks()
{
return books;
}
@Override
public String execute()
{
request.setAttribute("userName","Max From request");
session.put("userName","Max From session");
application.setAttribute("userName","Max From application");
books = new LinkedList <Book>();
books.add(new Book("978-0735619678", "Code Complete, Second Edition", 32.99));
books.add(new Book("978-0596007867", "The Art of Project Management", 35.96));
books.add(new Book("978-0201633610", "Design Patterns: Elements of Reusable Object-Oriented Software", 43.19));
books.add(new Book("978-0596527341", "Information Architecture for the World Wide Web: Designing Large-Scale Web Sites", 25.19));
books.add(new Book("978-0735605350", "Software Estimation: Demystifying the Black Art", 25.19));
return SUCCESS;
}
}
Ognl.jsp
<%@ page language="java" contentType="text/html;charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
访问OGNL上下文和Action上下文
parameters:
request.userName:
session.userName:
application.userName:
attr.userName:
用于过滤和投影集合
Books more than $35
-$
/s:iterator
The price of "Code Complete,Second Edition"is:
构造Map
The value of key "foo1" is
web.xml
<?xml version="1.0" encoding="UTF-8"?>
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
Struts2 OGNL
struts-cleanup
org.apache.struts2.dispatcher.ActionContextCleanUp
struts-cleanup
/*
struts2
org.apache.struts2.dispatcher.FilterDispatcher
struts2
/*
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">
/Ognl.jsp
全部错误信息:
2008-7-5 11:17:13 org.apache.catalina.core.AprLifecycleListener init
信息: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:\Program Files\Java\jdk1.5.0_06\bin;D:\Program Files\apache-tomcat-6.0.10\bin
2008-7-5 11:17:14 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8087
2008-7-5 11:17:14 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 781 ms
2008-7-5 11:17:14 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2008-7-5 11:17:14 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.10
2008-7-5 11:17:15 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2008-7-5 11:17:15 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2008-7-5 11:17:16 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
信息: Parsing configuration file [struts-default.xml]
2008-7-5 11:17:16 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
信息: Parsing configuration file [struts-plugin.xml]
2008-7-5 11:17:16 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
信息: Parsing configuration file [struts.xml]
2008-7-5 11:17:16 org.apache.struts2.config.Settings getLocale
警告: Settings: Could not parse struts.locale setting, substituting default VM locale
2008-7-5 11:17:16 com.opensymphony.xwork2.config.impl.DefaultConfiguration$ContainerProperties setProperty
信息: Overriding property struts.i18n.reload - old value: false new value: true
2008-7-5 11:17:16 com.opensymphony.xwork2.config.impl.DefaultConfiguration$ContainerProperties setProperty
信息: Overriding property struts.configuration.xml.reload - old value: false new value: true
2008-7-5 11:17:17 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory
信息: Setting DefaultObjectTypeDeterminer as default ...
2008-7-5 11:17:17 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8087
2008-7-5 11:17:17 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2008-7-5 11:17:17 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/47 config=null
2008-7-5 11:17:17 org.apache.catalina.startup.Catalina start
信息: Server startup in 3328 ms
2008-7-5 11:17:27 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)f\
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 11:17:27 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 11:17:27 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 11:17:27 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:18 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:18 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:19 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:19 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:22 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:22 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:22 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:22 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:23 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:24 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:24 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:24 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:24 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at ognl.Ognl.getValue(Ognl.java:310)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:190)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:208)
at org.apache.struts2.components.Component.findValue(Component.java:254)
at org.apache.struts2.components.IteratorComponent.start(IteratorComponent.java:210)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fiterator_005f0(Ognl_jsp.java:257)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:118)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.title=='Code Complete,Second Edition'}.{price}[0]' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.ASTChain.getValueBody(ASTChain.java:109)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)
at ognl.Ognl.getValue(Ognl.java:333)
at com.opensymphony.xwork2.util.OgnlUtil.getValue(OgnlUtil.java:194)
at com.opensymphony.xwork2.util.OgnlValueStack.findValue(OgnlValueStack.java:238)
at org.apache.struts2.components.Property.start(Property.java:136)
at org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:54)
at org.apache.jsp.Ognl_jsp._jspx_meth_s_005fproperty_005f7(Ognl_jsp.java:339)
at org.apache.jsp.Ognl_jsp._jspService(Ognl_jsp.java:124)
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.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:413)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
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:595)
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: NOTE: Previous warning message was issued due to devMode set to true.
2008-7-5 16:30:25 com.opensymphony.xwork2.util.OgnlValueStack logLookupFailure
警告: Caught an exception while evaluating expression 'books.{?#this.price>35}' against value stack
java.lang.NullPointerException
at ognl.OgnlRuntime$ClassCache.get(OgnlRuntime.java:147)
at ognl.OgnlRuntime.getHandler(OgnlRuntime.java:1578)
at ognl.OgnlRuntime.getElementsAccessor(OgnlRuntime.java:1545)
at ognl.ASTSelect.getValueBody(ASTSelect.java:53)
at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
at ognl.SimpleNode.getValue(SimpleNode.java:210)