LoginAction.javaとLoginForm.javaをコンパイルしたいとき、
コマンドですを
c:¥work¥tomcat¥webapps¥sample¥WEB-INF>
javac -cp src¥java;lib¥struts-1.3.10.jar;c:¥work¥tomcat¥lib¥servlet-api.jar -d classes src¥java¥*.java
と打つと
「src¥java¥LoginAction.javaは不正です
ファイルにクラスActionが含まれておりません
削除するかクラスパスの正しいサブディレクトリにあるかを確認して下さい」と
なってしまいます。
C:\work─┐tomcat─┐webapps─┐sample─┐WEB-INF─┐src─┐java─┐
以下の2つはjavaフォルダ内にあります。
LoginAction.java
LoginForm.java
成功すればclassesフォルダが追加され、LoginAction.class LoginForm.classが作成されるはずなのですが・・・
windowsです。
日経ソフトウェアのゼロから学ぶJAVAプログラミング132-133ページを見ながら
勉強していたところ、つまってしまいました。
よろしくお願いいたします。
質問で確認できないことがあります。
LoginAction.javaに Actionのクラスがあるのかないのかです。
>日経ソフトウェアのゼロから学ぶJAVAプログラミング132-133ページを見ながら
この雑誌がないと 確認できないですね。
class Action {
という記述は ありますでしょうか?
org.apache.struts.action.Actionがうまく
読み込めてなさそうなので、
lib¥struts-1.3.10.jarのパスの指定が正しいか、
またはjarファイルにActionクラスが入っているかを
確認するのはどうでしょう?
遅くなってすいません。
LoginAction.javaには
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class LoginAction extends Action {
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
LoginForm loginForm = (LoginForm)form;
String id = loginForm.getId();
String password = loginForm.getPassword();
if(id.equals("nikkei") && password.equals("pass")) {
request.setAttribute("id", id);
return mapping.findForward("success");
} else {
request.setAttribute("msg", "Login Failure");
return mapping.findForward("failure");
}
}
}
以上を記載してあります。
よろしくお願い致します。