PreparedStatementの罠。

PreparedStatementを使用し、CHAR項目に対してSELECT/UPDATEなどをする場合気をつけなければいけないこと。 ※Java1.5/1.4/1.3+Oracle JDBCドライバ10.2/10.1で再現。あるテーブル「TABLE1」 COL1|CHAR(3) COL2|VARCHAR2(3)「TABLE1」のデータ COL1|COL2 -…

System.exit(n)

System.exit(int n)のnはdos上の環境変数「%ERRORLEVEL%」にて拾える。例) public class Test{ public static void main(String[] args){ System.exit(-1); } }java Testecho %ERRORLEVEL% //-1が表示

IISとTomcat5.5の連携のところ。

server.xmlに追加するところの記述。 とあるのは の間違い。 5.5からなのか、CATALINA_HOME/server/lib/tomcat-ajp.jarの中の仕組みが変わっていて、 このままだと「ClassNotFoundException」が発生します。

OracleでExportコマンドを実行すると、エラーが発生。

環境 Oracle8i(それ以上は不明)内容 EXP-00008: Oracleエラー 904が発生しました。 ORA-00904: 列名が無効です。EXP-00008: Oracleエラー 6550が発生しました。 ORA-06550: 行 1、列 29: PLS-00302: コンポーネント IS_TRIGGER_FIRE_ONCE_INTERNALを宣言し…

org.apache.catalina.logger.FileLoggerが無いという例外が発生。

Tomcat5.0から5.5にバージョンアップしたとき。server.xml等は変更してない。エラー内容 致命的: Begin event threw exception java.lang.ClassNotFoundException: org.apache.catalina.logger.FileLogger 対応 CATALINA_HOME/shared/libにJAVA_HOME/lib/too…

文字化けに困ったらときの参考。

【Microsoft】SHIFT - JIS と Unicode 間の変換問題 http://support.microsoft.com/default.aspx?scid=kb;ja;JP170559【Oracle】JDBC 8.1.7上でのNLS環境におけるキャラクタの整合性の問題について http://otndnld.oracle.co.jp/tech/java/htdocs/javanls/ja…

Oracle Database 8i(charset:JAPANESE_JAPAN.JA16SJIS)とoo4oの接続

ETC

1.文字化けしないバージョン ○Windows2000/XP+Oracle Client 8.1.6/8.1.7のoo4o 2.文字化けするバージョン ×Windows2000/XP+Oracle Client 9.0/9.1/9.2のoo4o 回避方法1(9.2のみ) oo4oを使用するexeをキックする前に、環境変数を設定する。 ・set NLS_LANG=J…

iTextを利用した、PDFのセキュリティ付与

iText:http://www.lowagie.com/iText/ ○iTextのいいところ:JavaのみでPDFの作成操作ができる。 ○PDFとHTMLとRTFなどのファイルを扱うライブラリを備えていて、交互に変換できる(?) - import java.io.*; import com.lowagie.text.*; import com.lowagie.te…

JNIを通じてJavaからCOMを実行する。-JCom(Java-COMブリッジ)の利用

JCom(Java-COM Bridge):http://sourceforge.net/projects/jcom何が良いか。 ・JavaからCOMを使用する際、JavaとDLLの間を取り持つラッパーDLLを作成する必要が無くなる。 C++とかヘッダがどう、とか意識しないでできる。 - //Import宣言 import jp.ne.so_ne…

JNIを通じて、JavaからDLLを呼ぶ方法の概念。

・実現に必要なもの Javaクラス Javaクラスから自動で作成されたC++用ヘッダファイル(javah -jni ClassName.java) Javaクラスと使用したいDLLをつなぐラッパーDLL用C++ファイル 使用したいDLL多くのサイトが使用したいDLLを見に行くサンプルソースを書いてお…

Java Mailと『最新』RFC準拠について。

当然のことですが、最新のJava Mailの方が、最新のRFCに準拠してる可能性が高いです。 某システムで、Java Mail(恐らく)1.2を使っていましたが、 先ごろ変更したUnixベースのSendMailからは蹴られました。 恐らく、HELOだったりEHLOするものの実装が不完全…

ResultSetMetaDataとDatabaseMetaDataResultSetMetaData ResultSetより取得可能。 ・結果セットのカラム名 ・結果セットのカラムの型名 ・結果セットのカラム数 Connection conn=DriverManager.getConnection("url","user","pass"); Statement stmt=conn.cre…

JTextPane or JEditorPaneで行折り返しの制御を行う方法。 キモとなるのは、JTextPane#getScrollableTracksViewportWidth()のboolean値。 ソースを見ても良く分からないが、JEditorPane/JTextPaneはHTMLをサポートしている影響か、 明示的に「改行」しないと…

Java5でjavadocを実行すると、警告コメントが表示。 内容 ・「javadoc: 警告 - パッケージ "foo.hoge" に複数のパッケージコメントのソースが検出されました。」 対応 ・javadoc用に作成しているpackageコメントが複数あるので削除する。 ソースディレクトリ…

ETC

Retrotranslatorを早速使ってみた。 ニュース元:http://pcweb.mycom.co.jp/news/2006/03/23/340.html 開発元:http://retrotranslator.sourceforge.net/Antのbuildに組み込みます。※Antは1.5.1では動かず、最新のものを使用しました。 ・build.properties /…

あるjarからライブラリのjarを関連付ける方法 Manifestファイルに記述する。 Main-Class: (起動時のクラスをパッケージより記述) Class-Path: (作成するjarファイルから、ライブラリまでの相対パス。空白で区切る)例:あるjar「work.jar」とxjcl.jarと関…

Commons Configuration 1.2を使ってxmlプロパティを読み込む。 参考:http://jakarta.apache.org/commons/configuration/howto_xml.html //必要なjarファイル ・commons-lang-2.1.jar ・commons-collections-3.1.jar ・commons-configuration-1.2.jar ・comm…

Struts-htmlタグのラジオボタンに最初のチェックをセットする方法。 ラジオボタンに「checked="checked"」に相当するものは無い。 html:formタグにactionを指定し、そのactionに紐づくActionFormにプロパティを設定する。 //ActionForm private String fooRa…

Servletによるダウンロードを行う場合で、ダウンロードが始まらない場合がある。原因:IEの不具合。 1.IEが特定のバージョン 2.contentTypeが「application/octet-stream」 3.headerが「attachment」 の場合に発生。 response.setContentType("application/o…

正常なデータが入ったPostgresqlのDB(Aとします)→エクスポート→新しいPostgresqlのDB(B)にインポート を行ったとき、コンソール上でpsqlにより接続、SQL文を実行した場合は文字化けしないが、 Bに対してApache TorqueによるDB接続とSQL実行を行った場合に文…

Tomcatが正常終了せず、再startupした場合、前回のTomcatが残っているためエラーとなる。 『Catalina.start: LifecycleException: プロトコルハンドラの初期化に失敗しました: java.net.BindException: アドレスがすでに使われています。:8080』対応策:tomc…

Struts-Validateを使用した場合で、それが日付書式チェックの場合、 たとえば「yyyy/MM/dd」をチェックするとき、「2005/03/1i」のように 日付の最後が日付として無効な書式の場合「2005/03/1」としてValidate=true になってしまう。回避策:ActionForm#vali…

Tomcatを起動した後、あるコンテキストのコンテナを止めない状態で、classes以下を移動したら、 『 サーブレット action を利用不可能にマークします』 『以前のエラーのためにこのコンテキストの再ロードが失敗しました』 が発生し、コンテナ再起動しても起…

Solaris8+J2SE1.4.2+Ant1.5.1+Torque3.1を使用し、 Solaris上でtorque generatorを使用したところ、 org.apache.torque.engine.EngineException: org.xml.sax.SAXParseException: 属性の前に空白が必要です。 解決策: schema.xmlをUTF-8で保存している場合…

torqueで、WHERE XXX IS NULLを行う。Criteria criteria=new Criteria(); criteria.add(Peer.COLUMN_NAME,(Object)"",Criteria.ISNULL); List result=Peer.doSelect(criteria);IS NULLをやるのに、二番目の引数をダミーで作らないといけないらしい。

torque generatorで、schema.xmlの定義にmysqlのDATETIMEを設定して自動生成を行うと、NullPointerExceptionが発生原因: 自動生成用のmysqlの定義ファイルのミスと思われる。 怪しい箇所:${torque.templatePath}/sql/base/mysql/db.props回避策: 時間が無…

つかったプラグインなど。 StepCounter http://amateras.sourceforge.jp/cgi-bin/fswiki/wiki.cgi?page=StepCounter ・ステップ数を数えるクラスを作らなくても、クリック一発。楽。

TIMESTAMP型はデータをセットしても、勝手に更新日時になってしまう。 日付を挿入するときはDATETIME型。 最終更新日を挿入するときはTIMESTAMP型。 ...分かりづらい。

ServletContext#getRequestDispatcher().forward()を実行すると、JasperExceptionが発生。 ※try-catchがforwardの例外をcatchしているように見える。見る場所:forward先のJSPやJavaによる例外をcatchしているので、forwardする先のソースを検証する。

使用していていると、妙なログが出て、白いページしか出なくなる。 WebappClassLoader: Lifecycle error : CL stopped と java.lang.NoClassDefFoundError: javax/servlet/jsp/JspException回答:TomcatとApacheをとめて、CATALINA_HOME/work/(省略)/AppName…