现在在做一个关于网上书店的项目,其中有一个页面要求会员输入地址(分为state,province,city,address四项)。jsp代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page.
<s:form action="addAddr">
<s:token name="token"></s:token>
<s:hidden name="address.addressId" value="%{#address.addressId}"></s:hidden>
<s:textfield name="%{address.state}"
label="State" />
<s:textfield name="%{address.province}"
label="Province"/>
<s:textfield name="%{address.city}"
label="City"/>
<s:textfield name="%{address.address}"
label="Address"/>
<s:submit value="OK"></s:submit>
</s:form>
</body>
</html>
出现异常,表示为:
javax.servlet.ServletException: java.lang.NullPointerException
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)
注:我已经在action里定义了get和set方法
刚刚开始接触struts2,许多东西还不是很了解,还求各位高手不吝赐教,谢谢!
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page.
<s:form action="addAddr">
<s:token name="token"></s:token>
<s:hidden name="address.addressId" value="%{#address.addressId}"></s:hidden>
<s:textfield name="%{address.state}"
label="State" />
<s:textfield name="%{address.province}"
label="Province"/>
<s:textfield name="%{address.city}"
label="City"/>
<s:textfield name="%{address.address}"
label="Address"/>
<s:submit value="OK"></s:submit>
</s:form>
</body>
</html>
出现异常,表示为:
javax.servlet.ServletException: java.lang.NullPointerException
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515)
org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419)
注:我已经在action里定义了get和set方法
刚刚开始接触struts2,许多东西还不是很了解,还求各位高手不吝赐教,谢谢!
<s:hidden name="address.addressId" value="#address.addressId"></s:hidden>
<s:textfield name="address.state"
label="State" value="%{address.state}"/>
<s:textfield name="address.province"
label="Province" value="%{address.province}"/>
<s:textfield name="address.city"
label="City" value="%{address.city}"/>
<s:textfield name="address.address"
label="Address" value="%{address.address}"/>
<s:submit value="OK"></s:submit>
</s:form>
谢谢您的回答,不过像这样写也还是报错了。。是不是不是这个原因啊?
这样吧。?
value=#变量名字,就行了
首先你用标签的话!必须是action返回的页面!
如果你直接访问页面的话!会出现一些小问题的!
取值的时候才会和name,id有关系
<s:textfield name="address.province" />%{}:是OGNL表达式的用法,是计算表达式的值。应用如下:<s:textfield name="address.province" value="%{address.province}"/>