• ベストアンサー

Strutsのbean:writeにclassを適用したい

元々以下のような部品をカスタムタグ化したいです。 <input type="text" class="info" size="8"/> <bean:write name="InputForm" property="customerID" class="info"/> とやるとエラーになります。 class="info"の部分を削除するとエラーはなくなります。 どうしたらclass=""の部分を適用できるでしょうか

質問者が選んだベストアンサー

  • ベストアンサー
noname#18558
noname#18558
回答No.1

まず、マニュアルはちゃんと調べましょう。 HTMLのテキストフィールドと、 bean:writeは違いますが、 html:textのことでしょうか? それとも、単純に出力した文字にclassを適用したいということでしょうか? もし前者なら、classの代わりにstyleClass属性を使います。 後者なら、<span>で括ってやるなりすればいいでしょう。

参考URL:
http://struts.apache.org/struts-doc-1.2.8/api/index.html
ibayac
質問者

お礼

ありがとうございます。 カスタムタグにはどんな物があるかも知らずに質問していたので混乱した文章になってすみません。 bean:writeだと、beanの中の値に変換されるだけなので、そもそも使うカスタムタグが違うという事ですよね。 <input type="text" class="info" xxxxxxxxxx/> などとしたいのであれば、 html:textを使うべきで、その際にstyleClass属性を使用してやればOKという事ですね。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 【Struts】bean:writeタグのpropertyの設定値を動的に変更

    こんばんは。 bean:writeタグのpropertyの設定値を動的に変更したいと思っております。 <td width="200px;" nowrap><bean:write name="list" property="f_subJoining[1]"/></td> ※下記の『f_subJoining[1]』の1の値をの可変にしたいのです。 下記方法で試してみたのですが、上手くいかずに行き詰っております。 ------------------------------------- 【1】の部分を<%=i%>で設定。 <bean:write name="list" property="f_subJoining[<%=i%>]"/> ------------------------------------- 【2】propertyにそのまま変数を設定 <% String t_name = "f_subJoining[1]" %> <bean:write name="list" property="<%=t_name%>"/> ------------------------------------- ※【1】・【2】ともにエラーになってしまいます。 ご教授いただけたらと思います。 どうぞ、宜しくお願い致します。

    • ベストアンサー
    • Java
  • Struts 1.3 でbeanタグが認識されない

    Struts初心者です。 Struts1.3で以下のようなJSPを作成していますが、 "bean:write"のところで、"bean"に対応するtaglibディレクトリが存在しないかTLDファイルが見つかりません。 とエラーになります。 <%@ page contentType="text/html;charset=Windows-31J" %> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> ・ ・ ・ <html:html> <head> <title>○○○○○○○○</title> </head> <body> <h1>○○○○○○○○</h1> ●●●●<bean:write name="xxxx" property="id" />! </body> </html:html> "html"の方はエラーになりません。 ケアレスミスのような気がしていますので、どなたか教えていただけると嬉しいです。

  • struts bean:defineについて

    現在struts + weblogicでwebアプリの開発を行っています。 行いことは以下のようになっています。 <table> <html:form action"/hoge"> <logic:iterate id="lst" name="hoge" indexId="idx"> <bean:define id="listIndex" name="idx"/> <tr name='<bean:write name="idx"/>'> <td> <html:select name="lst" property="timeH" onclick="document.hogeForm.hdn.value='<%=listIndex%>'> <html:options property="timeHList"/> </html:select>    ・・・中略・・・ <input type="hidden" name="hdn"> </html:form> ここで問題になっているのが、onclickイベントでhiddenに値を入れようと思っているのですが、<%=listIndex%>がそのまま文字列になって返ってきます。 シングルコーテーションを外したらスクリプトエラー、 ダブルコーテーションで書いたら<html:select>のタグが閉じてないといわれ、エラーで落ちます。 どのように値を格納すれば正しくhdnに値を格納できるのでしょうか? struts 1.1 Weblogic 8.1 SP1 Windows2000にて開発 以上、宜しくお願い致します。

    • ベストアンサー
    • Java
  • <bean:write.../>がエラーを出す

    のですが原因が分かりません。 したのソースでコメントアウトしたものが動かないのです。 コメントアウトしていないものは動いています。 何が悪いのでしょうか? よろしくお願いします。 gomi.jsp: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="/WEB-INF/tld/struts-bean.tld" prefix="bean"%> <%@ page isELIgnored="false"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Java JakartaStruts</title> </head> <body> <jsp:useBean id="gomiBean" class="gomi.GomiBean" scope="request" /> <jsp:getProperty property="gomiInt" name="gomiBean"/><br/> ${gomiBean.gomiInt}<br/> <%-- <p>GomiBean gomiInt : <bean:write name="gomiBean" scope="request" property="gomiInt" /></p> --%> </body> </html>

  • struts で bean:parameter の指定方法でつまづいています

    いつもお世話になっております。 DBから取得したデータをiterateを使用してボタン表示を行い、ボタンを押されたときのデータを取得しようとしているのですが、 なんともうまくいきません。 1つ前のjavaで、 request.setAttribute("category",cmArray); として定義してあります。 cmArrayはmodelをArrayListに入れたものです。 実際のソースは <logic:iterate id="hyouji" name="category" scope="request"> <html:submit property="submit"><bean:write name="hyouji" property="category_name" /></html:submit> <bean:write name='hyouji' property='category' /> <--デバック用で期待した値がでます。 <bean:write name='hyouji' property='category_sub' /> <--デバック用で期待した値がでます。 <bean:parameter id="strCategory" name="hyouji.category" value="no-name" /> <bean:parameter id="strCategory_sub" name="category_sub" value="no-name2" /> <% System.out.println(strCategory); System.out.println(strCategory_sub); %> </logic:iterate> bean:parameterのnameの所を色々変えて試しているのですが、printlnの所ではvalueに指定した文字が 出てしまう状態です。 タグライブラリを使用せずに、スクリプトレットを使用すれば出来るようになった(OKWaveで解決)のですが、 できればタグライブラリで出来たらと思います。 どなたか分かる方がいましたら、ご教授下さい。

  • java struts で フォームビーンに入っているarrayDB配

    java struts で フォームビーンに入っているarrayDB配列の情報をリストボックスで表示するにはどのようにすればいいのでしょうか? <logic:iterate id="idToname" name="ENTRY" property="arrayDB" > <bean:write name='idToname' property='cmName'/> <option value="<bean:write name='idToname' property='cmbName' />"></option> </logic:iterate> で実行すると文字列が可変長で画面に出てきただけでリストボックスでは表示されませんでした。 リスト内容は可変です。 どうやって配列の内容をリストボックスで表示させればいいのでしょうか? ネットでかなり検索をしましたが、可変の配列をリストボックスで表示する方法はありませんでした。

    • ベストアンサー
    • Java
  • struts の iterateでのテーブル表示

    Map型のデータを、iterateを使って表(テーブル)表示を行っているものです。 Map型のデータには、23個のデータが入っています。 このデータを5×5の表に順番に入れて表示させたいのです。現在は1行に同じデータが5つ表示されています。 5×5の表にする方法がいまいちわかりません。 知っている方、宜しくお願いします。 今書いているソースの一部です。 <table border="1"> <logic:iterate id="data" indexId="ctr" name="list"> <tr> <td><bean:write name="data" property="name" /></td> td><bean:write name="data" property="name" /></td> td><bean:write name="data" property="name" /></td> td><bean:write name="data" property="name" /></td> td><bean:write name="data" property="name" /></td> </tr> </logic:iterate> </table>

  • location時に複数のclassを適用させたい

    次のようなフォームの部品があります。 <form name="formname" class="searchform">     <input type="text" name="query" class="searchbox">//     <input type="button" value="検索" class="button" onclick="search()" /> </form> http://www.com/index.phpにテキスト入力フィールドとボタンがあります。 テキストエリアに[任意の文字列]を入れてボタンを押すと、 <li class=list><a class=link href="http://www.com/search.php?que=[任意の文字列]">リンク</a></li> というリンクをクリックしたときと同じ動作を引き起こすようにしたいです。 form action="~"をつけてGETメソッドで送信するのではなく、あくまでもテキストボックスの値を受け取って、 それをクエリとしたhrefをlocateしたいのです。 <script type="text/javascript"> function searches(){ var str1=document.formname.query.value; href = "http://www.com/search.php?que="+str1; location.href = href; } </script> と自分でも書きましたが、これでは <a href="http://www.com/search.php?que=[任意の文字列]">リンク</a> をクリックしたときと同等になってしまいます。 liのclassとaのclassが適用されません。 この2つのclassは、別のjavascriptと連動しているため、どうしても <li class=list><a class=link href="http://www.com/search.php?que=[任意の文字列]">リンク</a></li> をクリックしたときと同様の動作を引き起こしたいのです。 上のフォームのbuttonをクリックすることで、このような動作を起こす方法を教えてください。 よろしくお願いします。

  • struts-config.xmlの設定

    お世話になります。 strutsを使用しlogin画面を作成し、エラーならエラーメッセージを表示させ、成功なら次のページに遷移するようにしたいのですが、 その際のstruts-config.xmlの設定がわかりません。 login画面を以下のように設定(login.jsp) <%@ page language="java" contentType="text/html; charset=windows-31j" pageEncoding="windows-31j"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <html:html> <head> <title>ログイン画面</title> </head> <body> <html:errors/> <html:form action="/login" method="post"> ユーザID : <html:text property="id"/><br> パスワード: <html:password property="password"/><br> <html:submit value="ログイン"/> </html:form> </body> </html:html> </html> struts-config.xml <form-beans> <!-- sample form bean descriptor for an ActionForm <form-bean name="LoginForm"   //jspのform actionで渡すデータ type="org.apache.struts.validator.DynaValidatorForm"/> end sample --> <!-- sample form bean descriptor for a DynaActionForm <form-property     name="userid" //jsp画面のproperty指定時に渡す type="java.lang.String"/> <form-property name="password" //passwordのとき type="java.lang.String"/> </form-bean> end sample --> </form-beans>      //actionで渡すデータの定義1 <action path="/Login"   //actionで渡すデータ type="org.apache.struts.actions.LoginAction" parameter="/pages/Input.jsp"/> //actionで渡すデータの定義2 <action path="/InputSubmit" type="app.InputAction" name="inputForm" scope="request" validate="true" input="/pages/Input.jsp"/> //actionで渡す定義3 <action path="/edit*" type="app.Edit{1}Action" name="inputForm" scope="request" validate="true" input="/pages/Edit{1}.jsp"/> end samples --> </action-mappings> の箇所を変更するのはわかるのですが、どう変更したらいいかがわかりません。 ログイン成功時画面(loginSuccess.jsp) <%@ page language="java" contentType="text/html; charset=windows-31j" pageEncoding="windows-31j"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <%@ taglib uri="/tags/struts-html" prefix="html" %> LoginSuccess!! <html:form action="/nextpage" method="post"> <html:submit value="次のページ"/> </html:form> </html> と設定してます。 javaクラスの設定も関係あるのですが、今回は省略してます 。今回したいのはlogin.jsp画面を表示させたいのですが、 その際以下のエラーがでます。 org.apache.jasper.JasperException: An exception occurred processing JSP page /pages/login.jsp at line 19 16: </head> 17: <body> 18: <html:errors/> 19: <html:form action="/login" method="post"> 20: ユーザID : <html:text property="id"/><br> 21: パスワード: <html:password property="password"/><br> 22: <html:submit value="ログイン"/> よろしくお願いします。

  • struts iterateタグ内のデータ取得方法

    DynaActionFormと、iterateタグを用いて、 複数レコードのデータをTEXTフィールドに設定しています(下記参照)。 入力画面(input.jsp)の次に実行されるActionクラスで、 Textフィールドに表示した配列の項目(sckForm[0].sck_no)の値を取得したいのですが、 記述方法がわからず困っています。 どなたかご存知の方がいらっしゃいましたら、教えてください。 (ソース) ■struts-config.xml <form-beans> <form-bean name="sckForm" type="org.apache.struts.action.DynaActionForm"> <form-property name="sck_no" type="java.lang.String" /> <form-property name="sck_nm" type="java.lang.String" /> </form-bean> ■入力画面(input.jsp) <html:form action="/sck_result.do"> <logic:iterate id="sckForm" name="sck.search" scope="application" indexId="index"> <html:text name="sckForm" property="sck_no" indexed="true"/> <html:text name="sckForm" property="sck_nm" indexed="true"/> </logic:iterate> <html:submit property="submit" value="CSV出力" ></html:submit> </html:form> 実際のHTMLは、下記のように変換されています。 <form name="sckForm" method="post" action="/sample/sck/sck_result.do"> <input type="text" name="sckForm[0].sck_no" value="2005-01-002"> <input type="text" name="sckForm[0].sck_nm" value="A"> <input type="text" name="sckForm[1].sck_no" value="2005-01-003"> <input type="text" name="sckForm[1].sck_nm" value="B"> <input type="submit" name="submit" value="CSV出力"> </form>