- - PR -
JRun3.0上のサーブレットでJAXP1.1は使えますか?
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2001-11-15 15:34
テスト環境: Win98SE+J2SE1.3.1+JAXP1.1+JRun3.0
開発テスト中のサーブレットからJAXP1.1のAPI(javax.xml.transform以下のAPIや、DOM Level2のAPI)を使うことができず、悩んでいます。 ・普通にDocumentBuilderFactory.newInstance()すると、JRunにパッケージ されている古いJAXPのAPI()が呼び出されてしまいます。当然ながら、 java.lang.NoSuchMethodErrorが吐き出されます。 ・jaxp1.1のjarにクラスパスを通しても、読み込み順序のためか古いjaxpが利用 されるためか状況に変化ありません。 ・jaxp1.1のjarを古いものより先に読み込ませると、JRun自体が起動できません。 (javax.servlet.ServletException: sealing violation) ・サーブレット中で無理矢理 System.setProperty("javax.xml.parsers.DocumentBuilderFactory", "org.apache.crimson.jaxp.DocumentBuilderFactoryImpl"); とすると、次にDocumentBuilderFactory.newInstance()した時点で (javax.servlet.ServletException: sealing violation)が発生します。 ・スタックトレースに(Unknown Source)がたくさん出てくるため私には意味が 読みとれません。以下はjavax.xml.transformに失敗した例です。 java.lang.SecurityException: sealing violation at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at javax.xml.transform.TransformerFactory.newInstance (TransformerFactory.java:117) at kamicup.util.XMLWriter.print(XMLWriter.java:37) at kamicup.sppservlet.claimServlet.menu(claimServlet.java:224) at kamicup.sppservlet.claimServlet.doPost(claimServlet.java:286) at javax.servlet.http.HttpServlet.service(HttpServlet.java:772) at javax.servlet.http.HttpServlet.service(HttpServlet.java:865) at allaire.jrun.servlet.JRunSE.service(JRunSE.java:1013) at allaire.jrun.servlet.JRunSE.runServlet(JRunSE.java:925) at allaire.jrun.servlet.JRunNamedDispatcher.forward(JRunNamedDispatcher.java:34) at allaire.jrun.servlet.Invoker.service(Invoker.java:84) at allaire.jrun.servlet.JRunSE.service(JRunSE.java:1013) at allaire.jrun.servlet.JRunSE.runServlet(JRunSE.java:925) at allaire.jrun.servlet.JRunRequestDispatcher.forward(JRunRequestDispatcher.java:88) at allaire.jrun.servlet.JRunSE.service(JRunSE.java:1131) at allaire.jrun.servlet.JvmContext.dispatch(JvmContext.java:330) at allaire.jrun.http.WebEndpoint.run(WebEndpoint.java:107) at allaire.jrun.ThreadPool.run(ThreadPool.java:272) at allaire.jrun.WorkerThread.run(WorkerThread.java:75) ひょっとしてJRun3.0では無理なのかと思い始めています。 何か解る御方がいらっしゃいましたら、ご教授願います。 #長文失礼しました。 |
|
投稿日時: 2001-11-15 17:19
ベンダーのサイトに、関連する内容が載ってました。
http://cfusion.itfrontier.co.jp/kb/jrun_article.cfm?ID=335 http://cfusion.itfrontier.co.jp/kb/jrun_article.cfm?ID=213 |
|
投稿日時: 2001-11-16 11:43
ありがとうございます!!
Macromediaのホームページまでは見に行ったのですがわからなかったのです。 ご指示のページを見て、古いjaxp.jarを消去するとうまくいきました。 大変助かりました。 |
1
