• ベストアンサー

Struts で <action path="/login" と定義しているのに

Struts の struts-config.xml で <action path="/login" と定義しているのに http://localhost:8080/webapp/login と指定しても Action を起動できないのはなぜですか?

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

  • ベストアンサー
  • akinaga
  • ベストアンサー率60% (14/23)
回答No.1

デフォルトならhttp://localhost:8080/webapp/login.doではないでしょうか。

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

関連するQ&A

  • struts-config.xmlについて

    strutsを用いて画面遷移を行わせる場合、 <action path="~" type="~" name="~" scope="~"> <forward name="login" path="A"/> <forward name="main" path="B"/> <forward name="sample" path="C"/> <forward name="error" path="E"/> </action> struts-config.xmlにて上記のように記述した場合、 他サーバのJSPファイルを指定することは可能でしょうか? 見当はずれな質問をしていましたらご指摘宜しくお願いします。

    • ベストアンサー
    • Java
  • ☆Struts ActionServletの内部動作について

    Struts勉強中のものです。教えて下さい♪ struts-config.xmlより抜粋... <form-bean name="loginForm" type="jp.co.struts.LoginForm"/> <!----> <action-mappings> <!--Add action --> <action path="/login" name="loginForm" type="jp.co.struts.LoginAction"> <forward name="success" path="/jsp/loginSuccess.jsp"/> <forward name="error" path="/jsp/loginError.jsp"/> </action> </action-mappings> 以下URL画面の中段の画像の説明であるのですが、 (http://www.itmedia.co.jp/enterprise/0310/06/epn03_4.html) ActionServletは、struts-config.xmlを参照して、ActionFormクラスを処理した後にActionクラスを実行する内容の記載がありますが、内部的にはまず、Actionクラスを判別してから、nameで紐付けてActionFormクラスを判別しているのでしょうか?? 上記のstruts-config.xmlを例に具体的に言いますと。 まず、login.doが実行された場合、 <form-bean name="loginForm" type="jp.co.struts.LoginForm"/> には、path="/login" の属性がないので、まず、 <action path="/login" name="loginForm" type="jp.co.struts.LoginAction">を読み込んで、name属性とひもづく、form-beanのtype(type="jp.co.struts.LoginForm")に設定されたクラスを処理しているのでしょうか?? なぜ form-bean にpath属性を作って、login.doが実行された際に適切なform-beanを判別するようになっていないのかが疑問です・・・・ わかりずらい説明で申し訳ないですが。ご教授下さい。 また、このへんの説明が詳しく書いている本、サイト教えて下さい。 頑張ってStrutsを深く理解していきたいです♪

  • 教えてください: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 です。 よろしくお願いします。

  • コンパイラ struts

    フレームでコンパイラができません 助けてください top.html→menu.html、syouhin_kensaku.html,index.html menu.html(あ、い)(あ)を押したらhtmlはでますがjspが404がでます なぜでしょう struts-confing.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://jakarta.apache.org.struts/dtds/struts-config_1_2.dtd"> <struts-config> <!-- データソースの設定 --> <date-sources> <!-- BasicDateSourseクラスを利用する --> <date-sourse typr="org.apache.commons.dbcp.BasicDateSourse"> <!-- JDBCドライバクラス名の設定 --> <set-property="driverClassName" value="com.mysql.jdbc.Driver"/> <!-- JDBCの接続文字列の設定 --> <set-propety propety="url" value="jdbc:mysql://localhost/struts?useUnicode=true&amp;characterEncoding=Windows-31J"/> <!-- MySQLのユーザーIDの設定 --> <set-propety propety="username" value="root"/> <!-- MySQLのパスワードの設定 --> <set-propety propety="passward" value="root"/> </date-sources> <!-- Form情報の定義 --> <form-beans> <form-bean name="AccountForm" type="action.form.AccountForm"/> </form-beans> <!-- アクションの定義 --> <action-mappings> <!-- Form情報をAccountFormとして、action.AccountFormクラスをアクションとして指定する --> <!-- Form情報はリクエストスコープに格納される --> <action name="Account" type="action.UpdateAction" path="/UpdateAction" scope="request" > <!-- アクションの遷移先として論理名をUpdate ファイルパスを/webJSP/index.jspとする --> <forward name="Update" path="/webJSP/index.jsp" /> </action> </action-mappings> <message-resources parameter="jp.co.jetsystem.message.MessageResources.properties"/> </struts-config>

  • Strutsで他のプロジェクトへ処理を移す

    Strutsの制御についてお聞きします。 二つのプロジェクトがあった場合、一方のプロジェクトから別のプロジェクトへStrutsのActionMappingで処理を移すことは可能なのでしょうか? 例えば、ProjectA、ProjectBとあった場合、 A.jsp(ProjectA) ↓struts-config.xml(ProjectA) action_A.class(ProjectA) ↓struts-config.xml B.jsp(ProjectB) ↓struts-config(ProjectB) action_B.Action(ProjectB) といった処理です。 うまくいかなくて困っています。 宜しくお願いいたします。

    • ベストアンサー
    • Java
  • StrutsのEclipseプラグイン

    Strutsの勉強をしているのですが、アクションコンフィギレーションファイル(struts-config.xml)でてこずっています。 (具体的には404エラーなのでstruts-config.xmlの設定ミスが濃厚) 調べてみると、struts-config.xmlを自動編集してくれるプラグインが数種類あるらしいのです。 サイトを読む限りどれも一長一短のようですが、どうでしょうか。 お使いになっておられる方は使い勝手を教えていただけないでしょうか。 当方 Struts1.2.8 Eclipse3.1.1 Tomcat5.0 です。

    • ベストアンサー
    • Java
  • 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のstruts-config.xmlでのエラーメッセージ

    こんばんは strutsのエラーメッセージ表示で困っています。 javaでthrowしてstruts-config.xmlのexceptionで エラーを表示します。 以下のようにコーディングしてあり、 key999に定義してあるメッセージを表示することはできます。 しかしmessagesにセットしたメッセージを表示することができません。 messagesにセットしたメッセージを表示するにはstruts-config.xmlの keyはどのように設定すればよいのでしょうか? よろしくお願いします。 *struts-config.xml <exception key="999" type="myException" path="xxxxxxxxxx.jsp" handler="myExceptionHandler"/> *java public ActionForward hoge( ActionMapping map, ActionForm form, HttpServletRequest req, HttpServletResponse res ) throws Exception { try { return map.findForward("XXXXX"); } catch (myException e) { ActionMessages messages = new ActionMessages(); messages.add("error" ,new ActionMessage("001","エラー")); saveMessages(req,messages); throw e; } }

  • struts-config.xmlの記述方法について

    アクションがなく、 jspからjspをよびだしたいのですが、 struts-config.xmlへの記述方法がわかりません。 特例だとは思いますが、ご存知の方 教えてください。

    • ベストアンサー
    • Java
  • ◆Struts サンプルプログラムのURLがわかりません。◆

    Struts初心者です。教えて下さい。 http://www.stackasterisk.jp/tech/java/strutsSec01_03.jsp#5 上記サイトで勉強中にいきずまってしまいました。初歩的質問で申し訳御座いませんが教えて下さい。 4.Strutsアプリケーションの作成 で記載されている通りに jspファイル、javaファイルを配置し、struts-configファイルも記載されているようにしました。 画面を表示させたいのですが、どのような URLにアクセスすれば画面が表示されるのでしょうか・・?? web.xmlの中に urlマッピングする情報を追記したり、struts-configに追記したりする必要がありますのでしょうか・・・?? servletだと web.xmlに、<servlet-mapping>要素に<url-pattern>を定義してURLが判断できたのですが・・・・ 以下のようなURLでアクセスしているのですが、TomcatがHTTPステータス 404を表示します。。tomcatの再起動なども行なっております。 http://localhost:8080/struts-blank/jsp/loginForm.jsp 根本的に理解できていないと思うので、参考になるサイト、書籍などもあったら教えて下さい。 環境 WinXP,JDK1.5,Eclipse3.2,Struts1.2,Tomcat5.x 宜しくお願いします。