iframe怎么接收到Struts2传来的值呢?

会编程的阿强 2013-06-09 12:52:14


如图是index.jsp

我简单的写了一个请求,就是到数据库中查询所有的用户的信息,然后返回到index.jsp页面上,但是在index.jsp

页面上我无法接收到值。

index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<html>
<head>
<title>父页面</title>
</head>

<body>
<iframe src="user.jsp" style="margin-left: 500px;" name="main"
width="500px" height="200px"></iframe>
<iframe src="test.jsp"></iframe>
<s:debug/>
</body>
</html>




user.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<html>
<head>
<title>用户的页面---用来显示用户的信息</title>
</head>

<body>
这是用户的页面,在这里显示用户的信息。
<s:iterator value="users" var="user">
<s:property value="#user.userName" />
<s:property value="#user.passWord" />
</s:iterator>
<s:debug/>
</body>
</html>

test.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<html>
<body>
这是一个用于测试的页面。
<form action="userAction_findUsers" method="post">
<input type="submit" value="提交" />
</form>
</body>
</html>

userAction.java
package com.xumuye.action;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;

import com.opensymphony.xwork2.ActionSupport;
import com.xumuye.bean.User;
import com.xumuye.service.UserService;

@Controller
public class UserAction extends ActionSupport {
/**
*
*/
private static final long serialVersionUID = -3190817860600835920L;

// ///////////////////////////////////////////////
// 成员变量/////////////////////////////////////
// 注入UserService
@Autowired
private UserService userService;
private List<User> users;

public List<User> getUsers() {
return users;
}

public void setUsers(List<User> users) {
this.users = users;
}

public String findUsers() {
users = userService.findUsers();
return "findusers";
}
}

userServiceImpl.java
package com.xumuye.dao.impl;

import java.util.List;

import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import com.xumuye.bean.User;
import com.xumuye.dao.UserDao;

@Repository
public class UserDaoImpl implements UserDao {
// 注入sessionFactory
@Autowired
private SessionFactory sessionFactory;

@SuppressWarnings("unchecked")
@Override
public List<User> findUsers() {
return sessionFactory.getCurrentSession().createQuery("from User")
.list();
}
}

还请高手详细的解释一下!!非诚勿扰!谢谢@@!
...全文
199 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
kobe_byrant 2013-06-09
  • 打赏
  • 举报
回复
你是不是把jsp放在了web-inf下面了。
lxz19901212 2013-06-09
  • 打赏
  • 举报
回复
1.把iframe的src改成之前到ACTION的url,那样最简单 2.在子页面使用$.ready调用AJAX回去取数据吧,或者写在父页面隐藏域中,子页面通过JS的dom操作设值
ZHOU西口 2013-06-09
  • 打赏
  • 举报
回复
iframe是index.jsp内嵌的框架,所以你直接给index.jsp传当然不行了,定位不准确
  • 打赏
  • 举报
回复
楼主,这样子 不行的,iframe取不到, 为什么在这里的src中不直接指定那个要调用的action呢???这又不是不可以。。。 <iframe src="action路径" style="margin-left: 500px;" name="main" width="500px" height="200px"></iframe>
会编程的阿强 2013-06-09
  • 打赏
  • 举报
回复
struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
	<!--配置struts2的常量 -->
	<!-- 将struts2的Action交给spring实例化 -->
	<constant name="struts.objectFactory" value="spring" />
	<!--指定web应用的默认编码 -->
	<constant name="struts.i18n.encoding" value="UTF-8" />
	<!-- struts2支持动态方法调用 -->
	<constant name="struts.enable.DynamicMethodInvocation" value="true" />
	<!-- struts2的开发模式,用于热部署 -->
	<constant name="struts.devMode" value="true" />

	<package name="menuManager" namespace="/" extends="struts-default">
		<action name="*_*" class="{1}" method="{2}">
			<result name="findusers">/index.jsp</result>
			</action>
	</package>
</struts>

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧