• 締切済み

カスタムタグについて

JSFについて質問です。 カスタムタグを作成してJSPファイルに以下のように記述した場合に nameに指定あるABC(beanとしてxmlに登録した名前と同じ)はどういう意味なのでしょうか? <custom:body name="#{ABC}"> 初心者の為このような質問すいません。参考になるサイトでもいいので教えて頂けますでしょうか?

みんなの回答

noname#49664
noname#49664
回答No.2

JSFの場合、#{○○}というのは、Beanへのバインディングを指定するのに使うものです。#{ABC}ならば、ABCという名前のBeanにバインドをします。Beanに結び付けて、そのBeanのメソッドやプロパティを呼び出すようにしているのですね。 ただ、実際問題としてBeanそのものにname属性をバインドすることはないと思いますから(BeanがStringインスタンスとかでない限りは)、普通は#{ABC.nameStr}というような感じで、Bean内のプロパティやメソッド名にバインドしてその値を利用するように書いてあると思いますよ。 P.S. 初心者で、いきなりJSFというのはちょっと難しいかも知れませんね。JSPとカスタムタグの基本がわからないと理解は難しいので。まずそちらをしっかりマスターしてからJSFに進んだほうがいいのでは。

ajiwai
質問者

お礼

返答が遅くなりすいません。 JSPとカスタムタグについてもう少し勉強したいと思います。 色々とありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • _ranco_
  • ベストアンサー率58% (126/214)
回答No.1

このカスタムタグが何をやるのか、それが分からないと…。 (一般的には、#{ABC}はない==間違いと思う。)

ajiwai
質問者

お礼

返答が遅くなりすいません。 結果はbeanのコンストラクタを記述したところエラーが出なくなりました。 カスタムタグではLoginCheckをしていると思われます。 また、もう少しJSFの勉強していきたいと思います。 ありがとうございました。

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

関連するQ&A

  • カスタムタグを使用してリクエストスコープから値を取得する方法

    カスタムタグを使用してリクエストスコープから値を取得する方法 質問させてください。 JSPで、リクエストスコープから取得した値をカスタムタグの属性に保存したいと思います。 NET等でやり方を調べたのですが、いまいちわかりませんでした。 カスタムタグの属性に値を設定すること、属性から値を取得することはできたのですが、これにリクエストスコープが絡むとどうすればいいのかわかりません。(リクエストスコープそのものが良くわかってないからだと思うのですが) 具体的なやり方や、参考になるサイトを教えていただけるとうれしいです。 お知恵をお貸しください。よろしくお願いいたします。

    • ベストアンサー
    • Java
  • struts関連 web.xmlに複数の<servlet-mappin

    struts関連 web.xmlに複数の<servlet-mapping>を記述する方法について 初歩的なことなのかもしれませんが質問させてください。 Struts1.3.5での質問なのですが、web.xmlにURLパターンを複数記述している場合に servlet-mapping の記載位置が後の方のURLパターンが、 JSPのFormタグで生成されるパスに設定されてしまい、原因が分からず困っています。 現象としては、 例えば、web.xmlの<servlet-mapping>にそれぞれ異なる URLパターンを[/abc/*]→[/xyz/*]の順で記述している場合、 web.xml(抜粋)---------------------------------------------- <servlet-mapping> <servlet-name>TestServlet</servlet-name> <url-pattern>/abc/*</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>TestServlet</servlet-name> <url-pattern>/xyz/*</url-pattern> </servlet-mapping> ---------------------------------------------------------- URLパターンが[/abc/*]となる以下のURLをブラウザで表示した所、 [https:/localhost/{コンテキストルート}/abc/LoginAction] 表示されたJSP内で指定しているformタグのアクションパスが web.xmlで記載したURLパターンのパスではなく、 web.xmlで後の方に記載した別のURLパターンのパス(/xyz/)が設定されてしまいます。 ・表示されるJSP内で指定しているアクションパス <html:form action="/LoginAction"> 上記で生成されるHTML <form name="LoginForm" method="post" action="/コンテキスト名/xyz/LoginAction">       web.xmlでURLパターンを[/xyz/*]→[/abc/*]の順で記述した場合は、 正しくURLパターンで記述したパスが設定されます。 <form name="LoginForm" method="post" action="/コンテキスト名/abc/LoginAction"> ただし、この場合はURLパターンが[/xyz/*]のURLを表示した場合に <form ~ action="/{コンテキストルート}/abc/LoginAction">となってしまいます。 どなたかこうした現象について回避策をご存知の方はいらっしゃらないでしょうか?

    • ベストアンサー
    • Java
  • JSPファイルに書いたの各タグ情報を拾うには?

    JSPファイルの中に書いたHTMLやカスタムタグの情報を拾って テキストファイルに書き込みたいと思っています。 実際にやりたいことは、<INPUT>タグや、カスタムタグ<hoge>に付与した、 name属性の値を列挙したいという様な内容です。 例)JSPファイルに以下の様な入力項目を記述   <INPUT type="text" name="hoge1" value="10">   <INPUT type="text" name="hoge2" value="10">    :     ↓   テキストファイルに   hoge1   hoge2    : テキストファイルに書き出すという部分は分かりますが、JSPファイルから 各タグを判別し、その中のname属性の値を取得する・・・という部分が どうやってやろうかと困っています。 XMLのパーサを利用して・・・と考えたりもしましたが、HTMLの各タグは エンドタグが決まって記述されている訳ではないため、利用出来ないかも? と思っています。 何か良いものがあればと思っていますが、見つけられず、通常にファイルを オープンして入力項目タグがあるかどうか、ひとつずつ調べるという方法しか 思い付いていません。 もし何か良い方法があれば是非教えて下さい。

    • ベストアンサー
    • Java
  • 教えてください:strutsのhtml:formタグがjspに展開された状態の、actionの値について

    java初心者です。 どなたか教えていただけませんでしょうか? JAVAのstrutsを使用してソフトを作成しています。 JSPに記載した「<html:form action="/authentication" focus="id"> 」 との記述が、WEB(IE)に展開されたソースを見ると、「<form name="AuthenticationForm" method="post" action="/strutsTest/authentication">」 に変換されています。 action="/authentication"と記述しているにもかかわらず、 action="/strutsTest/authentication"と展開されているのですが /strutsTestが自動的に付与されているのは、なぜなのでしょうか? なにか設定するところがあるのでしょうか? ※struts-config.xmlに指定したpathと一致しない為、404NotFoundになるので自動設定しないように変更したいのです。 ちなみに環境は struts-1.3.10 Apache Tomcat 6.0.14 Server EclipsVersion: 3.4.2 pakage名:struts プロジェクト名:strutsTest struts-config.xmlの設定   <form-beans> <form-bean name="AuthenticationForm" type="struts.AuthenticationForm"/> </form-beans> <global-exceptions> </global-exceptions> <global-forwards> <forward name="fail" path="/login.jsp"/> </global-forwards> <action-mappings> <action path="/authentication" name="AuthenticationForm" type="struts.AuthenticationAction" scope="session"> <forward name="success" path="/welcome.jsp"/> <forward name="fail" path="/login.jsp"/> </action> </action-mappings> login.jsp <%@ page contentType="text/html; charset=Windows-31J" %> <%@ taglib uri="/tags/struts-bean" prefix="bean" %> <%@ taglib uri="/tags/struts-logic" prefix="logic" %> <%@ taglib uri="/tags/struts-html" prefix="html" %> <html:html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Windows-31J"/> <title>ログイン画面</title> </head> <body> <html:errors/> ID・パスワードを入力してください。 <html:form action="/authentication" focus="id"> <html:text property="id" size="16"/> <br> <html:password property="pas" size="16" redisplay="false" /> <br> <html:submit property="submit" value="送信"/> <html:reset value="リセット"/> </html:form> </body> </html:html> 動作順は、login.jsp => AuthenticationAction.class => welcome.jsp です。 よろしくお願いします。

  • logic:iterateタグでString配列を・・・

    aisatu[0] = "hello"; aisatu[1] = "こんにちは" というString配列があったとします(setter,getterもあります)。 <jsp:useBean id="helloworld"class="javahello.HelloWorld" > <logic:iterate id="abc" name="helloworld" property="aisatu"> <bean:write name="abc" property="aisatu" /> </logic:iterate> という記述の仕方であってると思うのですが、 うまく配列を表示してくれません。 なにかご指摘ありましたらよろしくお願いします。

  • JSFでJavaScriptを使用するには?

    JSF初心者の為、頓珍漢な質問で恐縮です。 以下のようなJSFタグを使用したJSPがあるとします。 <%@ page contentType="text/html;charset=Shift_JIS" %> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> <html> <head> </head> <body> <f:view> <h:form> <h:inputText id="number" value="#{myBean.message}"/> <h:commandButton action="#{myBean.doHoge}" value="送信"/> </h:form> </f:view> </body> </html> このJSPに、以下の処理をJavaScriptで実装したいと思っています。 「送信ボタンのOnClickイベントでinputTextに入力された文字をJavaScriptのAlert()関数でポップアップ表示する。」 JSFタグがなければなんてことのない処理ですが、JSFタグを使用している状況でどのようにJavaScriptを使用していいものなのかがよくわかりません。 上記の処理はどのように実装すればいいのでようか? JSFでJavaScriptを使用する方法について参考になるサイトがあれば教えてください。

    • ベストアンサー
    • Java
  • WebLogic6.0 でのJSPプリコンパイルについて

    WebLogic6.0でJSPのプリコンパイルを行いたいのですが、 Javaコマンドからのコンパイルはできるのに、 weblogic.xml で <jsp-descriptor> <jsp-param> <param-name>precompile</param-name> <param-value>true</param-value> </jsp-param> </jsp-descriptor> と指定しても web.xml で <context-param> <param-name>weblogic.jsp.precompile</param-name> <param-value>true</param-value> </context-param> と指定しても、 エラーがでるだけ、または何も起こらずクラスファイルが生成されない、 となってしまいます。 WebLogic6.0のspecificationにはプリコンパイルの方法がのっているのに 付属のマニュアルにはのっていないので、これはいまだ 解決できないバグということなのでしょうか。 どなたかご存じの方がいましたら教えてください。

    • ベストアンサー
    • Java
  • ServletとJSPで。。。

    省略してますが、下記の記述で JSPの----部分の記述方法がわかりません。 実際、実行できる環境だといいのですが、今は実行環境がないので調査できません。 まだなにもわからない状態なので、記述が正しいかも自信ありませんがよろしくお願いします。 =============Servlet==============================Schedulebean bean = new Schedulebean(); bean.setYear(request.getParameter("year")); bean.setMonth(request.getParameter("month")); request.setAttribute("bean", bean); request.getRequestDispatcher("/jsp/schedulefrm.jsp").forward(request,response); ============ JSP ================== <%@ page contentType = "text/html; charset=Shift_JIS"%> <jsp:useBean id="bean" scope="request" class="java.lang.String"/> <HTML> <FRAMESET FRAMESPACING="10" COLS="250,*"> <FRAME src="/jsp/calender.jsp?Year=<%= year % -------- ↑ >&Month=<%= month %>" --------- ↑    上記をid 取得する記述は? name = "left" scrolling = "no" NORESIZE /> <FRAME src="/jsp/schedule.jsp?Year=<%= year %>&Month=<%= month %>" name = "right" scrolling = "yes" /> </FRAMESET> </HTML>

    • ベストアンサー
    • Java
  • JSPの値により遷移先を変更する

    こんにちは。 【abc.jsp】内の 【ボタンA】を押した場合は【abc.jsp】へ 【ボタンB】を押した場合は【edf.jsp】へ 上記のように、 JSPで取得した値により遷移先を変更させようとしています。 ですが、【ボタンA】、【ボタンB】のどちらを 押しても【abc.jsp】に遷移します。 上記の処理を行うにはどうすればよいでしょうか? 以下に抜粋した処理を記述します。 ***** 処理(abc.jsp) ***** <logic:equal name="actionForm" property="actionFlag" value="abc">   <%actionV = "/abc.jsp";%> </logic:equal> <logic:notEqual name="actionForm" property="actionFlag" value="abc">   <%actionV = "/efg.jsp";%> </logic:notEqual> <html:form method="POST" action="<%=actionV %>"> 以下略 不明な点がありましたら、補足いたします。

    • ベストアンサー
    • Java
  • テキストボックス値をsetPropertyでセット

    HTMLのテキストボックス<input type="text">値を JSPのsetPropertyでセットBeanのフィールドとしてセットし、 Servlet側で取得したいと思っています。 JSPでのsetPropertyの書き方は次のようで、 直接valueに値を書く(またはbeanからとってきた値を書くようですが、 [質問1.]テキストボックスに入力された値を代入することは可能でしょうか? [質問2.]どのように記述すればよろしいのでしょうか。 ---JSP setPropertyの記述 <jsp:setProperty name="オブジェクト変数"             property="プロパティ"             value="プロパティ値"             param="パラメータ" />