トップページ⇒tech
967コメント369KB

JAVAサーブレットQ&A

■ このスレッドは過去ログ倉庫に格納されています
0001厨房 NGNG
日本語の参考書のまったく出てないサーブレット。
それに関するQ&A

0730デフォルトの名無しさんNGNG
このスレの>>448>>450と全く同じ状況なんだが、回答がなくて鬱・・・。
0731デフォルトの名無しさんNGNG
WEB-INF/web.xml書いたか?
0732デフォルトの名無しさんNGNG
examplesの下で動作したものをコピってあります。
0733732NGNG
web.xmlってクラス名直指定でやるなら書かなくても良いのかな、と思ってるのですが違ってます?
0734727NGNG
>>728
遅ればせながら解決しました
ありがとうございました
0735デフォルトの名無しさんNGNG
JavaBeans + Servletで作ってるときに、DBのコネクションとかはどんな感じ
で書きますか?
1,JavaBeansにあらかたの処理を書いてServletのinitでそれを呼ぶ。
2.Servletのinitだけに書いておく。
3.JavaBeansでDBに登録とか削除とかのメソッドでコネクションするようにしておく。
4.その他

みなさんどんな感じで作ってるんでしょ。
0736デフォルトの名無しさんNGNG
>>735
環境によっても違うと思うが少なくともinitに書くものはコネクションのための
初期化処理で、リクエスト毎に実行する部分には実際の接続、切断の処理を
書くように使い分けてる。つまり2+3
0737デフォルトの名無しさんNGNG
コンテナがConnectionPoolingできるものならそれを使う。
リクエスト毎に Connection conn = ds.getConnection();
できなかったら・・・PoolManとかどう?
0738デフォルトの名無しさんNGNG
なんかズレてるな・・・逝ってきます
0739仕様書無しさんNGNG
>>711
www.mycgiserver.com
DB & JSP & Servlet & PHP

しかもタダ。
0740仕様書無しさんNGNG
www.webappcabaret.com

こっちもタダ。
こっちの方がいいかも。
使った感じ軽い。
0741デフォルトの名無しさんNGNG
739,740は神!!
0742724NGNG
ここに書くと重くなるんじゃ・・・(;´Д`)
まぁWeb板みたいなことはないかな。忙しい奴等ばっかりだろうし
0743デフォルトの名無しさんNGNG
>>740
FREE for 30 Days だが?
0744デフォルトの名無しさんNGNG
>>743 最低月3.33$だから一応当初の希望は満たしているんじゃない?
0745デフォルトの名無しさんNGNG
なるほど。たしかに
0746デフォルトの名無しさんNGNG
tomcat4なんだけど、
startup.shで起動すると、
常駐しないで、10秒ほど落ちちゃうんだけど、
似たような現象に遭遇した人居ない?
ログにはまったく何も出力されていない、
tomcat3なら動くけど。。。
環境は、SlackwareのLinuxで、kernelは2.2.16
jdkは1.3.1_1
Win2kなら動くんだよなぁ〜
どして?
0747デフォルトの名無しさんNGNG
739か740を利用する人で、DBも使おうと思ってる人。
急造したjspのDBクライアントあるけど欲しい?
0748デフォルトの名無しさんNGNG
ほしい
0749747NGNG
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<STYLE type="text/css">
<!--
input { width:300px; }
TEXTAREA { WIDTH:512px; HEIGHT:189px; }
-->
</STYLE>
<%@ page language="java" import="java.io.*, java.sql.*, java.util.*" %>
<%!
final static String driver = "***.***.jdbcDriver";
final static String db_url = "jdbc:****:*******";
final static String dbUser = "*****";
final static String password = "****";
static boolean init = false;
%>
<%
StringBuffer result = null;
if((session.isNew() == true)||(init == false)){
//初期化前なら
result = new StringBuffer();
session.setAttribute("result",result);
try {
Class.forName(driver).newInstance();
}
catch(Exception e){
result.append("ドライバロード失敗\r\n" + e.getMessage() + "\r\n");
response.sendRedirect("./sql_client.jsp");
}
init = true;
}
else {
result = (StringBuffer)session.getAttribute("result");
}
%>
0750747NGNG
<!-- 初期化済み -->
<%
Connection con = null;
Statement stmt = null;
String buf = request.getParameter("mode");
if((buf != null)&&(buf.equals("execute") == true)){
result.insert(0,db_url + "\r\n接続\r\n--\r\n");
try{
con = DriverManager.getConnection(db_url,dbUser,password);
con.setAutoCommit(true);
stmt = con.createStatement();
result.insert(0,"成功\r\n--\r\n");
if(stmt != null){
buf = request.getParameter("execute");
if((buf != null)&&(buf.length() > 0))
buf = new String(buf.getBytes("8859_1"),"JISAutoDetect");
StringTokenizer tkn = new StringTokenizer(buf,";");
while (tkn.hasMoreTokens()) {
StringBuffer sql = new StringBuffer(tkn.nextToken());

int pos = 0;
while((pos = sql.toString().indexOf('\r', pos)) > -1){
String left = sql.toString().substring(pos + 2);
sql.setLength(pos);
if(left.length() > 0){
sql.append(" " + left);
}
}

boolean rb = false;
try {
rb = stmt.execute(sql.toString());
}
catch(SQLException e ){
result.insert(0,sql.toString() + "\r\n" + e.getMessage() + "\r\n--\r\n");
}
0751747NGNG
if(rb == true) {
ResultSet rs = stmt.getResultSet();
int col = rs.getMetaData().getColumnCount();
StringBuffer column = new StringBuffer();
for (int ct = 1;ct <= rs.getMetaData().getColumnCount();ct++) {
column.append("|" + rs.getMetaData().getColumnLabel(ct));
}
column.append("|\r\n");

StringBuffer res = new StringBuffer(column.toString());
while(rs.next()){
for (int ct = 1;ct <= rs.getMetaData().getColumnCount();ct++) {
buf = rs.getString(ct);
if((buf != null)&&(buf.length() > 0))
buf = new String(buf.getBytes("SJIS"),"8859_1");
res.append("|" + buf);
}
res.append("|\r\n");
}
res.append(column);
result.insert(0,res + "\r\n--\r\n");
}
//入力バッファにセット
result.insert(0,sql.toString() + "\r\n実行\r\n--\r\n");
}
}
}
catch(Exception e){
result.insert(0,"失敗\r\n--\r\n");
}
finally{
stmt.close();
con.close();
}

}
0752747NGNG
else {
//とりあえず接続確認
try {
con = DriverManager.getConnection(db_url,dbUser,password);
con.setAutoCommit(true);
stmt = con.createStatement();
result.append("接続成功!\r\n");
}
catch(Exception e){
result.append("コネクト失敗\r\n" + e.getMessage() + "\r\n");
return;
}
finally {
stmt.close();
con.close();
}
}
%>
<BODY>
<P>SQL Client</P>
<FORM method="post">
<input type="hidden" name="mode" value="execute">
<P><TEXTAREA rows="9" cols="56" name="execute"></TEXTAREA></P>
<P><INPUT type="submit" value="Query"></FORM></P>
<P><TEXTAREA rows="9" cols="56" name="result"><%= result.toString() %></TEXTAREA></P>
</BODY>
</HTML>
0753747NGNG
sql_client.jsp
って名前でupしてくれ。

上のTEXTAREAにSQL文を書いて
[Query]を押すだけ。
;で区切れば複数のSQL文を書いてもヨロシ。

とりあえず急ぎで作った程度の代物なので
細かなツッコミあればよろしく。
0754デフォルトの名無しさんNGNG
userとpasswordくらい打たせろよ(w
0755デフォルトの名無しさんNGNG
iniファイルにドライバ名とURLを書く形にして
ログイン、ログアウトに対応すればさらにいい。
0756明日提出NGNG
今、JAVAで簡単なWEBアプリ作ってるんですが、、

あるユーザーがログインしている時に、別のブラウザでそのユーザー名でログインするのは不可、という状態にしたいのです。
最初のユーザーがログインした時に、static変数でフラグを立てておけば別のユーザーのログイン不可状態には出来るのですが、最初のユーザーがブラウザを閉じる等で
ログアウトしたときに、フラグを変える方法が解りません。
sessionやservletcontext等も試してみましたが出来ませんでした。

どなたか教えて下さい〜〜。
ブラウザが閉じられたことをサーブレットに伝えることが出来れば
なんとかなるような気がするんですが、、。





ブラウザ(IE)が右上のボタンで閉じられたことをサーブレットに知らせるには
どうしたらいいのでしょうか。
0757デフォルトの名無しさんNGNG
画面にアプレット仕込んで TCP/IP でつなげとけ。
0758デフォルトの名無しさんNGNG
WinNT4.0 + Tomcat3.2.3 で販売在庫システムを作って
います。携帯電話(i-mode)から使います。
それで、ちょっと教えて頂きたいのですが、
HttpSessionによるセッション管理がうまくいきません。
PCのブラウザ(IEなど)だと、ちゃんと
request.getSession(true)で取れたセッション
オブジェクトにセッション属性を設定し、保存
されるのに、携帯電話からだと、うまくいきません。

というか、携帯電話ブラウザでは、
HttpSessionクラスを使ったセッション管理は
できないのでしょうか?
0759デフォルトの名無しさんNGNG
>>756
一定時間なんのリクエストもないようならログアウトしたことにしとけ。
0760デフォルトの名無しさんNGNG
>>756
右上のボタンが押されたことを通知するには、ユーザの
ブラウザ上で「右上のボタンが押されたことを関知できるもの」
が動いてなければならない
っていうふうに考えると------> >>757 だし(UDPでもよいけど)

そいうものを作りたくなくて、あくまでユーザの画面には
プレーンなHTMLだけを送るなら、セッション管理して
タイムアウト監視するしかない。ってことで ----> >>759
0761デフォルトの名無しさんNGNG
>>758
もしかしてクッキー管理のセッション使ってるんじゃない?

URL Rewritingでセッション変数を保持しなきゃダメよ。
0762758NGNG
>>761
>もしかしてクッキー管理のセッション使ってるんじゃない?
>
>URL Rewritingでセッション変数を保持しなきゃダメよ。

レスどーもです。サーブレットAPIが標準的にサポートしている
HttpSession APIについて、ものの本「コア・サーブレット&JSP」
によると
『ブラウザがクッキーをサポートしていればクッキーを使い
クッキーが使えない、またはディスエーブルされている場合は
自動的にURL Rewriting に切り替える』
とあるので、「あとはおまかせ」でうまくいくのかと思った
んですが…
もし、自分でセッション管理ロジック作って
>URL Rewritingでセッション変数を保持
するとなると、タイムアウト機構も自分で
書かなければいけませんね…?
0763 NGNG
割り込んですまない。

JDBCでMicrosoft SQL Serverに接続できます?
だったら、ASPから乗り換えてみようかな。
0764デフォルトの名無しさんNGNG
出来るよ。
0765763NGNG
>764
ホント?

ありがと。
0766デフォルトの名無しさんNGNG
>>746
一番新しい UNIX Magazine に、同じように tomcat4 が起動直後に
こっそり落ちる症状について書いてあったようななかったような。
0767デフォルトの名無しさんNGNG
>>758
漏れも最初試したけど、結局うまくいかなかったよ、
結局セッション維持は自分でやった
パラメータの暗号化&圧縮もしたかったしな
0768デフォルトの名無しさんNGNG
>>766
おっ!、情報どうも、探してみるわ
0769766NGNG
>>766
すまんけど、何月号か思えてない?
0770デフォルトの名無しさんNGNG
最近サーブレットプログラミングをはじめた初心者です。
WinNT4.0上でTomcat3.2.3を使ってサーブレットを開発しており、開発段階
では、TomcatのWebサーバ機能を使っているのですが、Tomcatを開始した
ウィンドウ(bin\startup.batで開く)に以下のようなメッセージが、自作サーブ
レットへのリクエスト送信タイミングと無関係に時々出ます。


2001-12-08 19:56:11 - Ctx( ): 404 R( + /scripts/root.exe + null) null
2001-12-08 19:56:12 - Ctx( ): 404 R( + /MSADC/root.exe + null) null
2001-12-08 19:56:12 - Ctx( ): 404 R( + /c/winnt/system32/cmd.exe + null) null
2001-12-08 19:56:13 - Ctx( ): 404 R( + /d/winnt/system32/cmd.exe + null) null
2001-12-08 19:56:14 - Ctx( ): 404 R( /scripts/..%255c../winnt/system32/cmd.exe) null
2001-12-08 19:56:14 - Ctx( ): 404 R( /_vti_bin/..%255c../..%255c../..%255c../winnt/system32/cmd.exe) null
2001-12-08 19:56:15 - Ctx( ): 404 R( /_mem_bin/..%255c../..%255c../..%255c../winnt/system32/cmd.exe) null
2001-12-08 19:56:15 - Ctx( ): 404 R( /msadc/..%255c../..%255c../..%255c/..%c1%1c../..%c1%1c../..%c1%1c../winnt/system32/cmd.exe
) null
java.io.IOException: Invalid argument
at java.io.Win32FileSystem.canonicalize(Native Method)
at java.io.File.getCanonicalPath(File.java:440)
at org.apache.tomcat.util.FileUtil.safePath(FileUtil.java:184)
at org.apache.tomcat.core.Context.getRealPath(Context.java:797)
at org.apache.tomcat.request.StaticInterceptor.requestMap(StaticInterceptor.java:196)
at org.apache.tomcat.core.ContextManager.processRequest(ContextManager.java:835)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:786)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:758)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
at java.lang.Thread.run(Thread.java:484)

これは、いったい何が起きているのか、詳しい方教えてください。
0771デフォルトの名無しさんNGNG
>>770
Nimda か何かの攻撃を受けているだけだ。セキュ板逝って聞いて来い。
0772デフォルトの名無しさんNGNG
>>771
げげっ!!そーなんですか?!
ありがとう
0773デフォルトの名無しさんNGNG
>>758
URL Rewriting についてちゃんと調べたのか?
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/http/HttpServletResponse.html#encodeURL(java.lang.String)
でURLに ;jsessionid=XXX を付加することだよ。

>というか、携帯電話ブラウザでは、
>HttpSessionクラスを使ったセッション管理は
>できないのでしょうか?
よって、できる。767のように自分でセッション維持のコード書いたりして
まわりに迷惑かけてはイカンぞ。
0774773NGNG
つーか
ttp://www.dmz.hitachi-sk.co.jp/Java/Tech/servlet/sample/SimpleSessionWithoutCookie.html
ホレ。 >>758
0775デフォルトの名無しさんNGNG
hageていいですか?
0776デフォルトの名無しさんNGNG
>>775
勝手に禿げて下さい。
0777デフォルトの名無しさんNGNG
Linux版のtomcat4
起動時、CLASSPATH継承しないから、
気をつけれ!
0778ウマナミナノネーNGNG
えっと、特定のファイルをダウンロードダイアログに表示させてダウンロードさせるServletと作ったのねん。
IEではちゃんと動いたのねん。
だけどNetspaceでは動かないのねん。
ファイル名がバケるとかぢゃなくて、Servletの名前が「DLOAD」だとすると

http://www.hogehoge.net/Download/DLOAD?file="もなー"

とかすると、「DLOADをダウンロードします」とか出てくるのねん。
もちろんIEだと、ちゃんと「ダウンロード中:もなー」って出てくるのねん
(日本語ファイル名問題は解決済みなのねん)

・・・Netspaceなんてだいっ嫌いなのねん(T_T)
0779デフォルトの名無しさんNGNG
>>778
なんだおまえ?
0780778NGNG
>>779

白い珍獣と呼んで欲しいのねん(^^;
0781あぼーんNGNG
あぼーん
0782778NGNG
>>781
……まぁ、別にいいけど(^^; JavaHouse-MLでも読んでるのけ?

(以下マジ)
こういう場合、削除要請出したほうがいいのでしょうか?>ALL

ちなみに問題は未だ解決せず。Netscapeはリンクの名前しか見てないのか?
0783デフォルトの名無しさんNGNG
データベースかと思いましたが一応サーブレットなのでここで教えてください。
HPのフォームから番号を入れるとDBを参照するようにしたいのです。
とりあえず,標準出力にと思いましたが,エラーが発生します。

エラー:java.sql.SQLException:[Microsoft][ODBC Driber Manager]データ ソース名および指定された既定のドライバが見つかりません。

なぜなのでしょう?お願いします。DBにはしっかりとデータはあるのですが。
環境は jdk1.3.1_01 Apach1.3.20 Tomcat3.2.3 Access2000 win98 です。

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.sql.*;

public class ShowForm extends HttpServlet {
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException {

String number = request.getParameter("number");
String name = request.getParameter("name");
System.out.println(number+":"+ ( new String(name.getBytes("8859_1"),"JISAutoDetect")));

try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection myCon = DriverManager.getConnection("jdbc:odbc:FRIEND");
Statement mySt = myCon.createStatement();
ResultSet myRs = mySt.executeQuery("SELECT * FROM FRIEND_DAT WHERE Number=\"" + (new String(number.getBytes("8859_1"),"UTF-16")) + "\"");

if(myRs.next()){
long id = myRs.getLong("ID");
String Dname = myRs.getString("Name");
String Dnumber = myRs.getString("Number");
String DSyutu = myRs.getString("Syutu");
System.out.println(id + "/" + Dnumber + "/" + Dname + "/" + DSyutu);
} else {
System.out.println("該当するレコードはありませんでした。");
}
} catch(Exception e) {
System.out.println("エラー発生:" + e);
}

response.setContentType("text

 ・
 ・
 ・
 ・

AccessのUnicode圧縮は”はい”になっていますが関係ありますか。
いろいろ試しましtがまったくわかりませんでした。よろしくお願いします。
0784779NGNG
>>778
失礼したな。
丸山っつんだぁ〜
0785デフォルトの名無しさんNGNG
>>783
FRIEND ってのは ODBC Administrator (だっけ?) にちゃんと登録されてるのか?
そもそもユーザが "AND" とか付けたらエラい事になるぞ。
0786デフォルトの名無しさんNGNG
>>785
はい,コントロールパネルから行くやつですよね。
登録してあります。フォルダ内にそれらしき設定のファイルがありますし。
0787デフォルトの名無しさんNGNG
>>785
>そもそもユーザが "AND" とか付けたらエラい事になるぞ。
まずいですね,それ。
気が付きませんでした。
0788デフォルトの名無しさんNGNG
>785
すみません,今確認したところ,設定がなくなっていました。
パソコンを再起動したときにレジストリを修復がどうのこうのといっていましたので,
そのときにでも消えたのでしょうか。
登録しなおしました。
さっそくプログラムを実行しなおしてみたところ。
新しく
[Micorosoft][ODMC Driver Manager]パラメーターが少なすぎます。1を指定してください。
と出てしまいました。
こちらについてはまだ調べていませんが,お教え願いますか。
0789デフォルトの名無しさんNGNG
>>782
個人名晒したお詫びにネタを振ってやろう。サーブレット名 (というかそのエイリアス名) の後ろに
保存を希望するファイル名をくっつけてやってみな。

http://www.hogehoge.net/Download/DLOAD/もなー.zip <-- Shift-JIS の URL エンコードが必要かも

サーブレットからは request.getPathInfo() でファイル名が取得できるし、クライアントにはタダの
ファイルに見せることが出来る。Netscape ではどういう動きをするかわからんがな。やってみる
価値はあろう。
0790デフォルトの名無しさんNGNG
>>789

いえ、その書き方は日本語URLがらみでマズイっつー話が……(^^;

出来れば、Content-Dispositionで直接指定する方法を取りたいのです。それで読めなきゃブラウザが悪いという事で(苦笑)
0791デフォルトの名無しさんNGNG
>>783
ドライバ指定、もしくはURL間違ってたりすんでねぇ〜の?
他のテーブルは参照できるのか?
0792デフォルトの名無しさんNGNG
>>791
おなじようなプログラムからなら大丈夫なんです。
サーブレットではなくDosから値を渡す場合は。
0793ありがとうC ◆.aIRklLA NGNG
>>C#
一周年。おめでとうございます!
C#さんがこのスレを一人で支えてきました。
それに対してここを見たみんなでお礼の言葉を。
一言でいいです。お礼の一言をお願いします。
0794デフォルトの名無しさんNGNG
>>778
わきからすいません。
日本語ファイル名対策ってShift_JISで送るやつのことでしょうか?
0795デフォルトの名無しさんNGNG
しつもーん
Servletのセッションがタイムアウトしたことを
イベント(またはコールバックっぽいもの)
で検知することはできますか?
0796デフォルトの名無しさんNGNG
>>795
SessionBindingListener を implements した Bean をセッションに放り込んでおけ。セッションから
切り離されたタイミングで valueUnbound() が呼び出される。明示的にセッションから削除 (もしくは
セッションが invalidate) されたか、タイムアウトかどうかを判断するロジックは自分で作れ。

というか HttpSession#getLastAccessedTime() + HttpSession#getMaxInactiveInterval() * 1000 が
System.currentTimeMillis() より小さければタイムアウトということでよいのかな? これはやったこと
ないので不明。報告求む。
0797デフォルトの名無しさんNGNG
Tomcatで、負荷分散とかする方法ってあるの?
逆に言えば、高いアクセス負荷に耐えうるTomcatの運用方法はどんなものがある?
0798デフォルトの名無しさんNGNG
 はじめまして。タグリストについて、めちゃめちゃ初心者な質問があります。
根本的な間違いだと思うのですが・・・。
 症状としては、JSPに埋め込んだ「prefix」がInvalid attributeと怒られて
しまいます。
 ここに至るまでの手順は、
 1.TagSupportを継承したクラスを作り、「doStartTag()」を実装
 2.tldファイルを作成。
(tagclassはプロジェクトから指定し、nameはshowtextとする)
 3.JSPに「<%@ taglib uri="testlib.tld" prefix="test">」と
   ディレクティブを書く
 4.JSPに、「<test:showtext />」と書く。

こんな感じです。
 TOMCATでは、このtldファイルのuriをweb.xmlに書くそうですが、
VisualAgeのテスト環境なので、JSPで直接指定するそうです。
 断片的な情報ですが、なにか間違いがあるようでしたら教えてください。
0799798NGNG
タグリストじゃなくて、タグライブラリです。
おおボケですいません。
0800デフォルトの名無しさんNGNG
>>798
 (1) ${TOMCAT}/webapps/examples/WEB-INF/jsp/example-taglib.tld
   を参考に、tldファイルを作成
  
 (2) ${TOMCAT}/webapps/examples/WEB-INF/web.xml の <taglib/>
   を参考に、tldファイル所在を登録

 してみそ。
  
0801798NGNG
>>800
 早速のお返事、ありがとうございます。
ただ、悲しいかな、説明の内容が理解できるところまでいってません。

TOMCATの環境で、参考になるファイルを教えていただいたように
思うのですが、そのTOMCAT環境がないためそれすら叶いません。
 いろいろと調べながら書いたので、tld自体は大丈夫な
気がします。(それなら動くはずですが・・・)
 原因として、サーバーからtldが見えていないような気がします。
tldファイルの所在を登録しようとしても、今の環境(VisualAge
のテスト環境である、WebSphereの小さい版)ではweb.xmlが
ありません。
 これって、デフォルトでは存在せず、自前で作るファイル
なのでしょうか?
0802デフォルトの名無しさんNGNG
PrintWriter の flush() とは何をするメソッドですか
0803デフォルトの名無しさんNGNG
>>802
IOバッファに残っていて、デバイスにまだ書き込まれて
いないデータを掃きだします。
0804質問!NGNG
TomcatでDB内容閲覧Servletを製作している者です。
DB検索に時間がかかるので、getメソッドをSyncronizedにしないとうまく動いてくれません。
少しパフォーマンスが悪いようなのですが、何か解決策があったら教えて下さい。
お願いします。
0805デフォルトの名無しさんNGNG
DBの構成やSQL(使ってんだろ?)を見直す。
0806質問!NGNG
一応、SQLは単純にSELECT * FROM <Table名>です。
Type1からType4まで試してみましたが、効果があがりません。
LANの通信速度やOracleのレスポンス等の方面からの切り込みよりも、
ソース上でのチューニング方法があれば教えていただきたいのですが!
おねがいしまふ。
0807  NGNG
>>804
チューニングから始める奴は駄目。
0808あたー!!!!         NGNG
トムキャットって昔北斗の拳の主題歌を
歌ってたグループですか?
0809デフォルトの名無しさんNGNG
Apache SOAPの質問はスレを分けるべきなんでしょうか?>>ALL
ttp://xml.apache.org/soap/index.html
0810デフォルトの名無しさんNGNG
>>806
まずprofileとってみろ。まず間違いなくDBの待ちがほとんどだから。
時間を喰ってないところをどんなにチューニングしたって全然速くならない。
0811810NGNG
あ、「DB検索に時間がかかるので」って分かってんじゃん。
時間がかかってるところをいじらずにどこをいじるっつーんだ。
0812デフォルトの名無しさんNGNG
>>806

チューニングするより、まずはDBMSの学習を始める事を勧めます。
0813デフォルトの名無しさんNGNG
*を止める、きちんと列名を書く。
0814デフォルトの名無しさんNGNG
>>804
DB閲覧するだけのWebアプリ作ってるの?
WebObjects使うと、そんなの3分で作れるよ。
マジ。
0815デフォルトの名無しさんNGNG
>>804
毎回connectionを張りに逝ってるとか
0816質問!NGNG
>>815
connectionはずっとつなげっぱなしなんですが、、、
SQLの実行についてはなるべくインスタンスは最小に、かつnullになったりgcに食われないようにしたりしています。
>813,>815さん、色々とアドバイス有難うございます。
>810さん、実際、僕が聞いていたのは、レスポンスを早くするのにどんな工夫をしているのかを皆さんに聞きたかったのですが。
例えば、「Type1よりもType4の方が、、、」と言った事や、「3秒以内に同一のリクエストがある時、CSVファイルに書き出しておいた結果を利用する」と言うようなことです。
ドライバーの適材適所だとか、いろいろ軽くこなすテクニックとかですね、、
>813さん、*を使わずカラム名を直接指定してみます。
ありがとございました!
0817 NGNG
質問です。
サーバー群の入り口についてるロードバランススイッチの説明書に書いてある
「セッション」とサーブレットのセッションは関係あるんでしょうか?
0818デフォルトの名無しさんNGNG
>>817
半分くらいしか質問の意味がわかんないんだけど、一般的なロードバランシングとセッションについて書くと、もしセッション情報がメモリにあると、
ラウンドロビンなロードバランシングでは1度目と2度目のアクセスマシンが違っていたら、その2つのマシンでセッションは共有できていないわけ。
だから、セッション情報を共有する仕組みが必要。
0819 NGNG
>>818
説明書にはロードバランススイッチがセッションを保持すると書かれているのです。
20000セッションとか性能が書いてあるのです。
意味不明なのです。
0820デフォルトの名無しさん NGNG
質問です。
OSがXPなんですけど、JAVA2SDK1.3.1_02って対応してるんですか?
sunのHPではwin2000proまでしか書いていないので。
後J2EEとの違いってなんですか?
0821 NGNG
J2EEはサーバーサイド用
XPは知らない。
0822デフォルトの名無しさんNGNG
>>820
Sunにそう書いてあるのなら対応してないんだろう。
趣味で使うだけならためしに入れてみたら?
0823デフォルトの名無しさんNGNG
それにしても、ここあがんねぇ〜な
Java結構書き込みあんのに
まぁ、とりあえず、あげとく
0824デフォルトの名無しさんNGNG
>>820
たしかβ版があったと思われ
0825Java厨NGNG
Weblogicの場合
サーブレットで一時的にファイルを作成して
それを<IMG>タグのsrcに指定するような場合ですが、

作るときはWLSのHome以下のパス指定で出来たとして
参照させるにはURLにしないとだめなのですが、
この変換が分かりません…。

っていうか、
getServletContext().getRealPath("/");でnullが返ってきちゃったりするわけで…


勝手にサーバーのディレクトリいじるようなap作るなって言うなら、
どうすれば良いんですかね?
0826デフォルトの名無しさんNGNG
>>825
テンポラリファイル置くディレクトリが固定だったら、
URL自体も固定にならんの?
WebLogicをよく知らんのだがパスのマッピングしておいたら
すみそうな。
0827デフォルトの名無しさんNGNG
JSPファイルの中で自前クラスを使用する時に、
自前クラスが宣言されているclassファイルと
JSPファイルをどのように関連付けさせれば良いのでしょうか?
0828デフォルトの名無しさんNGNG
>>827
じゃぁ java.lang.String とはどう対応づけ(?)してるのかと問いたい。
0829超初心者NGNG
最近始めた超初心者です。
先輩方教えてください。

自分のパソでJSPをテキストエディタで作りました。

―――――――――――――――――――――――――――
<html><body>
<title>JSPのテスト</title>
<%
out.println("<html><body>");
    out.println("<br><h1>");
    out.println("a<br>");
    out.println("</h1></body></html>");
%>
</body></html>
―――――――――――――――――――――――――――

で、このファイルにtest.jspっていう名前を付けて保存して、
ブラウザで開いたんですけど、なにも表示されません。
どうしてですか?
0830JSP&rlo;PSJ&rle;NGNG
>>829
Tomcatかなんか、サーブレット/JSPコンテナなるものは使ってる?
■ このスレッドは過去ログ倉庫に格納されています