Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

JDBC:ODBC設定のinclude方法

以下のようなJSPのファイルがあり、dbdns,dbuid,dbpwdの部分の設定を外部ファイルenv.incでできるようにしたいと思います。
いろいろ試したのですが、実行するとdbdns,dbuid,dbpwdについて「シンボルが解決できません」とエラーになってしまいます。
どこを直したらよいかご教授いただけないでしょうか?(以下省略したサンプルです)

よろしくお願い致します。
---sample.jsp---
<%@page content type ....%>
<%@page inport="... %>
<HTML>
<%!
public ...{

}
%>
<%@ include file="env.inc" %>
<%
private void UpdateDatabase{
       Connection db1=DriverManager.getConnection(dbdns,dbuid,dbpwd);
}
private String getUpdate{
    String aaa = new String();
        .....
}
%>
<%
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection db0=DriverManager.getConnection(dbdns,dbuid,dbpwd);
%>
</HTML>

---env.inc---
String dbdns = "abcdb";
String dbuid = "admin";
String dbpwd = "abcdpass";

6

回答

79201

閲覧

6件の回答

評価

0

jspのコンバートされたjavaがキャッシュされてて更新されてない、なんてことはないですか。
javaファイルを見てみましょう。

評価

0

mioさん、ご回答ありがとうございます。
キャッシュをクリアして実行してみましたが、同じエラーでした。

評価

0

>javaファイルを見てみましょう。
これについては?
どう展開されているかを見れば、ミスが見つかるかも知れません。

評価

0

>javaファイルを見てみましょう。
おそらく、これをしないとエラーは取れないと思いますよ
というか、もう見つけてそうですけど・・。

でなければ、
或いは、インクルードディレクティブについて理解してみるとか

評価

0

mioさん>
javaファイルの中身を見なさいということですね。失礼しました。(JSPの構造を知らなかったため、指示が理解できていませんでした)

まあさん>
javaを見たところ、確かにインクルードされる場所などおかしいようです。インクルードディレクティブについて調べてもう一度当たってみます。

お二人ともありがとうございました。

評価

0

直せました。ありがとうございました。
やっぱりjavaのコードを見ないとどうなっているかわかりませんね。
勉強になりました。
結論としては、以下の点を直しました。
・sample.jspの中では、includeの位置を処理の前に変更。
・env.inc → env.jspにし、<%〜%>で囲う。

---sample.jsp---
<%@page content type ....%>
<%@page inport="... %>
<%@ include file="env.jsp" %>
<HTML>
<%!
public ...{

}

private void UpdateDatabase{
       Connection db1=DriverManager.getConnection(dbdns,dbuid,dbpwd);
}
private String getUpdate{
    String aaa = new String();
        .....
}
%>
<%
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection db0=DriverManager.getConnection(dbdns,dbuid,dbpwd);
%>
</HTML>

---env.jsp---
<%
String dbdns = "jdbc:odbc:abcdb";
String dbuid = "admin";
String dbpwd = "abcdpass";
%>

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。