seam中怎样让后台bean中的验证信息在前台的页面弹出框显示?

Mrpublic 2009-04-14
5day 写道
写xhtml的时候肯定要用模板啥?
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:s="http://jboss.com/products/seam/taglib"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:rich="http://richfaces.org/rich"
	xmlns:a="http://richfaces.org/a4j"
	xmlns:h="http://java.sun.com/jsf/html"
	template="/layout/template.xhtml">

template="/layout/template.xhtml"
就是模板文件啥?看看seam的例子就明白了。
将我的代码写到template.xhtml中就完成了。



嗯,我知道呀。。
是不是在我的那個button用
<s:decorate id="check" template="/layout/template.xhtml">
<h:commandButton.../>
</s:decorate>

但我沒我看到能激發點擊就能彈出對話框的代碼,我太菜了,再具體說明一下哦 ,5day。。。


ps:MS你是成都或重慶人?
sxlkk 2009-04-14
lz是不是想把后台的信息用alert形式显示到页面上吧,当点击按钮时跟后台交互一下,然后把交互之后在后台产生的信息用js显示吧。
如果是我说的这样我给你说说我的做法,用隐藏域,在界面上设置一个隐藏域,这里面存储的就是验证信息,如果产生验证信息的话它就会有值,然后在用js吧隐藏域的值显示一下
5day 2009-04-14
我说的template是指所有页面都引用的公共模板。
getidr()是个js函数,对你没用。
你可以看看javascript的document.getelementbyid.然后看这里就明白了。

ps:不在成都的四川人。
Mrpublic 2009-04-14
sxlkk 写道
lz是不是想把后台的信息用alert形式显示到页面上吧,当点击按钮时跟后台交互一下,然后把交互之后在后台产生的信息用js显示吧。
如果是我说的这样我给你说说我的做法,用隐藏域,在界面上设置一个隐藏域,这里面存储的就是验证信息,如果产生验证信息的话它就会有值,然后在用js吧隐藏域的值显示一下


對對對!!

我就是不曉得怎么用js來顯示呀

幫幫忙,具體說說吧
Mrpublic 2009-04-14
5day 写道
我说的template是指所有页面都引用的公共模板。
getidr()是个js函数,对你没用。
你可以看看javascript的document.getelementbyid.然后看这里就明白了。

ps:不在成都的四川人。


哦。。。我再看看吧,不是太懂。。。
sxlkk 2009-04-15
xhtml代码
<body>
	<h:form id="form1">
	<h:commandLink action="#{sysFieldBean.javaeyeAction}" value="验证"/>
		<h:inputHidden id="aa" value="#{javaeye}" />
		</h:form>
		<script type="text/javascript">
		if(document.getElementById("form1:aa").value.length>0){
             alert(document.getElementById("form1:aa").value);
		}
	</script>
	</body>

后台的会话bean代码
@Name("sysFieldBean")
public @Stateful class SysFieldsDaoBean implements SysFieldsDao {
	
	public SysFieldsDaoBean(){
	
	}
	
	public String javaeyeAction(){
		HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
		request.setAttribute("javaeye", "cuowuxinxi");
		return null;
	}

记得在接口写入javaeyeAction这个方法,不然会报method not found异常,你试试吧,这个我试过了,能运行,以前在struts里面用过,呵呵
Mrpublic 2009-04-15
sxlkk,先謝謝你!我再慢慢看,呵呵。。。
bianqioujin 2009-04-17
用seam的remote挺好的。配合jQuery来做,点按钮的时候,去执行某个方法
q_wong 2009-04-23
我看了下文檔(中文的 滿江紅的 2.0那個)
然後照著文檔里的操作
結果發現根本沒有@WebRemote這個注釋

後來看了下 我用的是seam2.1 
去org.jboss.seam.annotations這個包里看了源碼下根本就沒@WebRemote
應該是2.1的時候改了

不知道2.1還能用seam remoting嗎

哎...seam資料好少啊
官方手冊看著實在是很惱火...
q_wong 2009-04-23
搞定啦~
沒有用seam remoting也可以
就用sxlkk 2009-04-15 說的方法
但是在seam里不用那么麻煩的
可以不用inputhidden和Request.setAttribute的
就用@Out把錯誤信息注出來(我的是從後臺查出第幾行數據重複然後反饋給頁面)
在頁面直接用javaScript調用@Out出來的Message然後Alert就行了
這裡要注意下
javaScript要寫在後面哦
如果是寫在前面的話就沒用了....浪費我N久時間%>_<%
BTW:謝謝 sxlkk!
Global site tag (gtag.js) - Google Analytics