Javaの入門者です。3日ほど独学で勉強しています。

Javaを使って、HTMLでいうフォーム送信のような事を行おうと思っていますが、よくわかりませんでした。どなたかサンプルプログラムなどの情報をおもちの方は居られませんでしょうか?

●きっかけ
複数のサービスのIDとパスワードを記憶し、入力するのが面倒との声がありました。1度だけ入力してもらったID・パスワードを元に、複数のID・パスワードを貼りつけ、送信したいのです。Perlなど(HTML生成)ではディスクにパスワードが残ってしまいますので、Javaで出来ないものかと調査しましたがさっぱりわかりませんでした。
基本的には、パスワードがディスクに残らずに送信できればOKです。Java以外でもOK。もちろんマルチユーザー向けとなります。

●環境
レンタルサーバー(Apacheサーバー使用)使用。使用できるソフトに制限あり。
sendmailは使用可能。CGIも使用可能。
複数のサービスは複数の他社のサービスで、もちろんサーバーも別です。
開発には特に予算がなく、ソフトウェア購入などの費用は(ひとまず)ない状態です。

よろしくお願い申し上げます

このQ&Aに関連する最新のQ&A

A 回答 (2件)

実際にやってみたことがないので、無責任な回答になってしまいますが、URLを紹介しますのでやってみてください。



http://www.ipc.hokusei.ac.jp/~z00104/java/networ …
http://www.java-conf.gr.jp/archives/talk-ml/msg0 …
http://cgi14.plala.or.jp/antun/tips/cgi/
    • good
    • 0
この回答へのお礼

御返答、ありがとうございました

まさにこの辺のことを調べておりました。
しかし、私の現在の力ではそのまま転用することさえ
ままならない状態でありますが、なんとか実現させたいと
思っております。本当にありがとうございました。

お礼日時:2001/04/16 09:09

やりたいことを勘違いしているかもしれませんけど。

。。

(1) 玄関ページでIDとパスワードを入力。
(2) 色々なサービスに入るためのリンク(またはボタン)を表示。
(3) リンク(ボタン)クリックでサービスのログイン後のページを表示。

といったことかしら?
    • good
    • 0
この回答へのお礼

御返答、ありがとうございました。
残念ながら少し違い、(私の表現不足ですね、自分でもどこまで実現的か
解らなかったので、文章がまとまっていませんでした)

えー、「JavaからのCGI(JSP)の呼び出し方法(受け渡し方法かな)を調査し
ていました。」という感じでしょうか。

お礼日時:2001/04/16 08:58

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qブログ上で複数のjavaスクリプトから2つのjavaスクリプトをランダムに表示させたい

ブログ上に、複数のjavaスクリプトからランダムに2つのjavaスクリプトを選んで表示させたいのですが、コードがわからないので教えていただきたいです。選ばれた二つは被らないようにしたいです。

使用したいjavaスクリプトのコードは
<script type="text/javascript" charset="euc-jp"
src="○○1"></script>
<script type="text/javascript" charset="euc-jp"
src="○○2"></script>
<script type="text/javascript" charset="euc-jp"
src="○○3"></script>
のようになっています。

javaを使って画像や文字をランダムに表示する方法はあったので応用しようとしたのですがうまくいきませんでした。

よろしくお願いします。

Aベストアンサー

No.1です。
​http://meshiuma.net/​の中段右のアンケートの部分を
見ると、外部scriptのソースをphpでdocument.write文を動的に
出力してますね。しかもおきて破りの方法ですね、<script>要素や<css>
要素までdocument.writeしてます。
さらに致命的なのはdocument.closeの出力がありません。
phpをコールする時idパラメータを変えれば異なるアンケート書き出しの
ソースを履くみたいです。
アンケートをランダムに選ぶ処理は、おいといて、
そもそも複数のアンケートを表示できるのか試してみました。
結果、firefoxだと表示はしますが、document.close()が無いので
ロードが完了せず、次の処理に進みません。IEではまったくだめです。
自身のサーバー側でproxyとなる別の処理を作って、加工して返せば、なんとかなるかも?

(試したソース)
<html>
<head>
<script type="text/javascript">
function changeSRC(){
var url1='http://blog.with2.net/vote/form.php?sid=694531&id=7315&size=1&s_ttc=%233c78a7&s_dc=%23333333&s_cc=%23333333&s_tc=%23333333&nocm=y&nops=y&target=_blank';
var url2='http://blog.with2.net/vote/form.php?sid=694531&id=7316&size=1&s_ttc=%233c78a7&s_dc=%23333333&s_cc=%23333333&s_tc=%23333333&nocm=y&nops=y&target=_blank';
var url3='http://blog.with2.net/vote/form.php?sid=694531&id=7317&size=1&s_ttc=%233c78a7&s_dc=%23333333&s_cc=%23333333&s_tc=%23333333&nocm=y&nops=y&target=_blank';
var objhead1 = document.getElementById("ancate1");
var objhead2 = document.getElementById("ancate2");
var objhead3 = document.getElementById("ancate3");
var script1 = document.createElement("script");
script1.setAttribute("src",url1);
var script2 = document.createElement("script");
script2.setAttribute("src",url2);
var script3 = document.createElement("script");
script3.setAttribute("src",url3);
objhead1.appendChild(script1);
objhead2.appendChild(script2);
objhead3.appendChild(script3);
}
</script>
</head>
<body>
<input type="button" onclick="changeSRC();">
<div id="ancate1"></div>
<div id="ancate2"></div>
<div id="ancate3"></div>
</body>
</html>

No.1です。
​http://meshiuma.net/​の中段右のアンケートの部分を
見ると、外部scriptのソースをphpでdocument.write文を動的に
出力してますね。しかもおきて破りの方法ですね、<script>要素や<css>
要素までdocument.writeしてます。
さらに致命的なのはdocument.closeの出力がありません。
phpをコールする時idパラメータを変えれば異なるアンケート書き出しの
ソースを履くみたいです。
アンケートをランダムに選ぶ処理は、おいといて、
そもそも複数のアンケートを表示できるのか試してみました。
...続きを読む

QJava(Servlet,JSP)を使用してあるURLにHTTPリクエスト(POST)を送信する方法

あるWeb APIを使用したWEBアプリケーションを作成しています.
JavaのServletやJSPで実装していますが,サンプルではGETでリクエストを送る方法だけが紹介されていました.
APIがPOSTに対応しているので,POSTでリクエストを送信しようと思います.
サンプルは以下のようになっていましたが,POSTでリクエストを送信する場合,どう変更すれば良いでしょうか?

URL url = new URL("http://xxxxxx.xx/xx/?q=" + URLEncoder.encode(request.getParameter("data"), "UTF-8"));
URLConnection con = url.openConnection();
InputStream stream = con.getInputStream();

リクエストは日本語を含むデータをパラメータに含める予定です.

Aベストアンサー

HttpURLConnection POST
でGoogleで検索すると沢山出てくるけどね。

わかりやすいのは
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=22814&forum=12&6
ここかしら。

QJAVAアプレットの複数使用について

始めまして。早速ですが質問させて頂きます。

表題通りなのですが、
『http://www001.upp.sonet.ne.jp/oka/pop_menu8.htm』
で紹介されているポップアップメニューのハイパーリンク版を使わせて頂いたのですが、同じページ内に同アプレットを複数置く事は出来ないでしょうか?

自力で色々試してみたのですが、複数<body>内にペーストすべき部分を貼り付けると正常に稼動していた一つ目のものまで駄目になってしまいます。

本来ならば掲載サイト様への連絡が一番なのでしょうが、連絡先がどうしても見つけられませんでしたので恐縮ながら此方に質問させて頂く運びとなりました。

過去ログを検索致しましたが、もし同様な質問がされていたら申し訳御座いません。それでは宜しくお願い致します。

Aベストアンサー

一般論として,一つのページに複数のアプレットを置くことはできます。

次に,問題のページの話に移ります。

まずURLは,正しくは,
『http://www001.upp.so-net.ne.jp/oka/pop_menu8.htm』
ではないでしょうか('so'と'net'の間に'-'が入る)。

以下その前提で話を進めます。

supironさんがやりたいのは,たぶんハイパーリンク版のアプレットを複数置きたいということだと思うのですが,そうするためには,おそらく,

NAME = "PopupMenuApplet3"

の部分(同一ページに複数のアプレットがある場合に,アプレットを識別するために存在する属性)を,一つ一つのアプレットに対して変えてやればいいのではないかと思います。

例えば,一つ目は

NAME = "PopupMenuApplet3"

二つ目は,

NAME = "PopupMenuApplet3-2"

三つ目は,

NAME = "PopupMenuApplet3-3"

という感じです。

うまく行くかどうかは分かりませんが,一度試してみてください。

参考URL:http://java.sun.com/j2se/1.4/ja/docs/ja/guide/misc/applet.html

一般論として,一つのページに複数のアプレットを置くことはできます。

次に,問題のページの話に移ります。

まずURLは,正しくは,
『http://www001.upp.so-net.ne.jp/oka/pop_menu8.htm』
ではないでしょうか('so'と'net'の間に'-'が入る)。

以下その前提で話を進めます。

supironさんがやりたいのは,たぶんハイパーリンク版のアプレットを複数置きたいということだと思うのですが,そうするためには,おそらく,

NAME = "PopupMenuApplet3"

の部分(同一ページに複数のアプレットがある...続きを読む

Qid=a1 id=a2 id=a3 のようなid="a"+i のlengthを求めたい

id=a1 id=a2 id=a3 のようなid='a'+i のlengthを求めたい
のですが、どのようにするのでしょうか?

Aベストアンサー

たとえばこんな感じでどうでしょう?

<script>
window.onload=function(){
var tags=document.getElementsByTagName("*");
var count=0;
for(var i=0;i<tags.length;i++){
if(tags[i].id.match(/^a[0-9]+$/)) count++;
}
alert(count);
}
</script>

<div id="a1">a1</div>
<div id="a2">a2</div>
<div id="a3">a3</div>
<div id="a100">a100</div>
<div id="b1">b1</div>
<div id="b2">b2</div>
<div>none</div>

QJavaで、TomCatプロジェクトを使用したJDBCを使用したデータベースのアクセスについて教えてください。

すぐに回答を! TomCatプロジェクトでDBアクセスできず困っています。

●Javaプロジェクトの場合(成功)
 ・Javaプロジェクト作成 → 新規 → クラスを作成。
 ・プロジェクト選択 → メニューバー「プロジェクト」 → プロパティー
  → Javaのビルド・パス → ライブラリーの追加 → ユーザーライブラリー
  → 新規 → MySQLドライバを追加
 ・次のソースの実行にて、JDBC Dirverの接続を確認。

[JdbcSample.java]
import java.sql.*;
class JdbcSample {
public static void main(String[] args) {
try {

// 1.JDBC Driver の登録
Class.forName("com.mysql.jdbc.Driver").newInstance();

// 2.データベースへの接続
Connection con = DriverManager.getConnection(
"jdbc:mysql://localhost/db1", "(ユーザー名)", "(パスワード)");

// 3.SQL ステートメント・オブジェクトの作成
Statement stmt = con.createStatement();
// 4.SQL ステートメントの発行
ResultSet rs = stmt.executeQuery("SELECT * from null_test_tbl");
// 5.結果の出力
while (rs.next()) {
System.out.println(rs.getString("allow_null"));
}

// 6.データベースのクローズ
rs.close();
stmt.close();
con.close();

} catch (SQLException e1) {
System.out.println(
"SQLException: " + e1.getMessage());
System.out.println(
" SQLState: " + e1.getSQLState());
System.out.println(
" VendorError: " + e1.getErrorCode());
} catch (Exception e2) {
System.out.println(
"Exception: " + e2.getMessage());
}
}
}

●TomCatプロジェクト作成の場合(失敗)
 (1)TomCatプロジェクト作成 → 新規 → クラスを作成。
 (2)プロジェクト選択 → メニューバー「プロジェクト」 → プロパティー
  → Javaのビルド・パス → ライブラリーの追加 → ユーザーライブラリー
  → 新規 → MySQLドライバを追加
 (3)サーブレットからBeanの呼び出し。
 「​http://localhost:8080/test_mvc/jdbcSample​」
 (4)エラー「Exception: com.mysql.jdbc.Driver」 が発生。(ドライバーが見つかりません?)

[servlet]
package ne.jp;

import java.io.IOException;
import java.io.PrintWriter;

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

public class TestMvc extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


JdbcSample da = new JdbcSample();


try {
da.dbAccessTest(); (※)←ここでBeanのデータベースアクセスメソッドを呼び出し
} catch (Exception e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}


// HTML出力の準備
response.setContentType("text/html;charset=Shift_JIS");
PrintWriter out = response.getWriter();

out.println("<html><body><p>こんにちわ!</p></body>");
}

}

[Bean]
package ne.jp;
import java.sql.*;

class JdbcSample {

//Beanコンストラクタ
public JdbcSample(){
}

//データベースアクセス確認
public void dbAccessTest(){

try {

// 1.JDBC Driver の登録
Class.forName("com.mysql.jdbc.Driver").newInstance();

// 2.データベースへの接続
Connection con = DriverManager.getConnection(
"jdbc:mysql://localhost/db1", "***", "*****");

// 3.SQL ステートメント・オブジェクトの作成
Statement stmt = con.createStatement();
// 4.SQL ステートメントの発行
ResultSet rs = stmt.executeQuery("SELECT * from null_test_tbl");
// 5.結果の出力
while (rs.next()) {
System.out.println(rs.getString("allow_null"));
}

// 6.データベースのクローズ
rs.close();
stmt.close();
con.close();

} catch (SQLException e1) {
System.out.println(
"SQLException: " + e1.getMessage());
System.out.println(
" SQLState: " + e1.getSQLState());
System.out.println(
" VendorError: " + e1.getErrorCode());
} catch (Exception e2) {
System.out.println(
"Exception: " + e2.getMessage());
}
}
}

すぐに回答を! TomCatプロジェクトでDBアクセスできず困っています。

●Javaプロジェクトの場合(成功)
 ・Javaプロジェクト作成 → 新規 → クラスを作成。
 ・プロジェクト選択 → メニューバー「プロジェクト」 → プロパティー
  → Javaのビルド・パス → ライブラリーの追加 → ユーザーライブラリー
  → 新規 → MySQLドライバを追加
 ・次のソースの実行にて、JDBC Dirverの接続を確認。

[JdbcSample.java]
import java.sql.*;
class JdbcSample {
public static void main(S...続きを読む

Aベストアンサー

Tomcatは起動時に "[Tomcatディレクトリ]/lib" ディレクトリ配下のライブラリがクラスパスに追加されます。

Javaプロジェクトの場合は「Javaのビルド・パス=実行時のクラスパス」として設定されますが、TomCatプロジェクト作成の場合は「Javaのビルド・パス=実行時のクラスパス」とはなりません。

"[Tomcatディレクトリ]/lib" ディレクトリ配下にMySQLのJDBCドライバのjarファイルを置いてもう1度確認してみて下さい。


人気Q&Aランキング

おすすめ情報