質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Struts

StrutsはJava向けのWebアプリケーションフレームです。MVCモデルに基づいており、JSPやJavaサーブレットを組み合わせ、アプリケーション構築時に使用する各機能を提供しています。

Q&A

解決済

1回答

2495閲覧

リダイレクトを使っての出力 struts tomcat java

chiba000

総合スコア13

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Struts

StrutsはJava向けのWebアプリケーションフレームです。MVCモデルに基づいており、JSPやJavaサーブレットを組み合わせ、アプリケーション構築時に使用する各機能を提供しています。

0グッド

0クリップ

投稿2016/04/16 15:44

研修の下記プログラムが動作せず、困っています。
環境はecripse4.3 stルts tomcat6 です。

どなたかアドバイスをいただけませんか?


package jp.co.haduki.strutssample.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import jp.co.haduki.strutssample.actionform.SampleForm;
import jp.co.haduki.strutssample.logic.SampleLogic;

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 SampleAction extends Action {

public ActionForward doPost(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response, Object calString) { SampleLogic logic = new SampleLogic(); SampleForm sampleForm = (SampleForm) form; request.getAttribute("calString"); if (sampleForm.getText1() != null) { if (!sampleForm.getText1().equals("")) { logic.executeBusinessLogic(form); return mapping.findForward("success"); } } return mapping.findForward("error"); }

}


package jp.co.haduki.strutssample.action;

import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Calendar;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import jp.co.haduki.strutssample.actionform.CalkForm;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;

public class calkAction extends Action {

public void doGet(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ CalkForm calkForm = (CalkForm) form; String text1 = calkForm.getText1(); String text2 = calkForm.getText2(); String text3 = calkForm.getText3(); int text1calk = Integer.parseInt(text1); int text2calk = Integer.parseInt(text2); int text3calk = Integer.parseInt(text3); Calendar cal = Calendar.getInstance(); cal.add(Calendar.YEAR,-text1calk); cal.add(Calendar.MONTH,-text2calk); cal.add(Calendar.DATE,-text3calk); String calString = new SimpleDateFormat("yyyy/MM/dd").format(cal.getTime()); request.setAttribute("calString", calString); response.sendRedirect("/Sample"); mapping.findForward("calk"); }

}


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<%@ page contentType="text/html; charset=Windows-31J" pageEncoding="Windows-31J"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>

html:html

<head> <title>結果画面</title> </head> <body> あなたが入力したのは<bean:write name="sampleForm" property="text1" />です<br> <body> </html:html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

A-pZ

2016/04/17 06:32

動作しない状況をもっと明確にすると、より明確な回答がつくかと思います。例えばエラーが出ているのであれば、そのエラーの内容。Eclipseでコンパイルが通らないのであればその内容など。
chiba000

2016/04/18 01:23

ecripsではエラーは何もありません。 ローカルホストで検証するとページが何も表示されていない状態です。
A-pZ

2016/04/18 01:58

calkActionの末尾のほうで、 response.sendRedirect("/Sample"); mapping.findForward("calk"); と記載されていますが、指定したパスへリダイレクトと、ActionMappingへのフォワードが同時に指定されています。これはどちらが正しいのでしょうか。
Hiroshi-Aoki

2016/04/20 10:04

A-pZさん。確認されている意図はわかりますが、質問に質問で返されると質問した側としては苦しくなります。A-pZさんにはある程度頭にこうだろうというイメージがあるのではないでしょうか。そうでしたらその想定を前提に回答欄に回答をしていただくと良いと思います。
Hiroshi-Aoki

2016/04/20 10:10 編集

chiba000さん。struts.xmlと入力のJSPのソース(SampleActionを呼び出すJSP)も公開してもらえると全体像が具体的にわかると思います。公開願います。
A-pZ

2016/04/21 16:16

ローカルホストで何も表示されない、とのことですので、以下の内容も具体的に追記してくださると、正解が得られると思います。 * struts-config.xml * JSPファイル(ファイル名も一緒に)
guest

回答1

0

ベストアンサー

struts java リダイレクトについて
で質問されていた内容の続きと思います。
基本的なStrutsを使った作り方は理解されていると思います。先の質問の内容を実現する画面遷移の部分についてもやもしている印象を受けています。情報の追加・修正欄にお願いを記述しました。ご覧いただき情報公開いただければと思います。その情報を受けて回答を追記したいと思います。

投稿2016/04/20 10:11

Hiroshi-Aoki

総合スコア804

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chiba000

2016/04/22 01:38

ご協力ありがとうございました。皆さんのコメントを参考に解決できました!
Hiroshi-Aoki

2016/04/23 05:32

解決できてよかったです。 A-pZさんのコメントがヒントになったのだと思います。解決につながるコメントだったと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問