下载
开发软件
账户
下载
开发软件
登录
我忘记用户名和密码了
创建帐户
语言
帮助
语言
帮助
×
登录
登录名
密码
×
我忘记用户名和密码了
简体中文翻译状态
类别:
软件
用户
PersonalForge
Magazine
Wiki
搜索
OSDN
>
浏览软件
>
System
>
TERASOLUNA Framework
>
论坛
>
公开讨论
>
blogicで発生した例外のStackTraceが出力されない現象について
TERASOLUNA Framework
描述
项目概述
开发人员仪表板
项目的网页
开发人员
Image Gallery
List of RSS Feeds
Activity
统计
历史
下载
List of Releases
统计
源代码
Code Repository list
Subversion
查看仓库
任务单
Ticket List
里程碑列表
Type List
组件列表
List of frequently used tickets/RSS
Submit New Ticket
文档
Wiki
FrontPage
Title index
Recent changes
Doc Mgr
列表文档
沟通
论坛
List of Forums
公开讨论 (1277)
Mailing Lists
list of ML
terasoluna-information
新闻
论坛:
公开讨论
(Thread #20958)
Return to Thread list
RSS
blogicで発生した例外のStackTraceが出力されない現象について (2008-12-10 18:35 by
dancingsummer
#40554)
回复
Create ticket
TERASOLUNA 関係者の皆様
dancingsummerと申します。
TERASOLUNA Server Framework for Java(Web版) を使用させていただいております。
Version は 2.0.1.0 です。
Server Framework for Java(Web版) + Struts でプログラムを開発していて、
一点不思議に感じるところがありますので、質問させてください。
BLogic および ActionForm を利用している際に、BLogic から発生した例外を
そのまま放置してつかまえずにフレームワーク側に渡した際に、
StackTrace などがコンソールや log4j に出力されることなく、
何事もなかったかのように処理が終了してしまう現象が発生しております。
希望する動作は、開発時や運用時などに BLogic や ActionForm などで例外発生して、
かつそれらクラス内で処理されずに上位に throw された例外は、フレームワーク側で
catch してコンソール出力または log4j 出力などがされる、です。
私の使い方の間違い、設定方法の漏れ等が考えられましたら、ご指摘・ご教授をお願いしたいです。
また、もし、現在TERASOLUNA側の仕様が、StackTraceを出力しないとなっているようであれば、
出力いただけることを期待致します。
FrameworkにてStackTraceが出力されることにより、単体バグの調査等にて、
開発効率が上がると考えます。
お忙しいところ恐縮ですが、どうぞよろしく、おねがいいたします。
回复到 #40554
×
主体
Body
Reply To Message #40554 > TERASOLUNA 関係者の皆様 > dancingsummerと申します。 > > TERASOLUNA Server Framework for Java(Web版) を使用させていただいております。 > Version は 2.0.1.0 です。 > > Server Framework for Java(Web版) + Struts でプログラムを開発していて、 > 一点不思議に感じるところがありますので、質問させてください。 > > BLogic および ActionForm を利用している際に、BLogic から発生した例外を > そのまま放置してつかまえずにフレームワーク側に渡した際に、 > StackTrace などがコンソールや log4j に出力されることなく、 > 何事もなかったかのように処理が終了してしまう現象が発生しております。 > > 希望する動作は、開発時や運用時などに BLogic や ActionForm などで例外発生して、 > かつそれらクラス内で処理されずに上位に throw された例外は、フレームワーク側で > catch してコンソール出力または log4j 出力などがされる、です。 > > 私の使い方の間違い、設定方法の漏れ等が考えられましたら、ご指摘・ご教授をお願いしたいです。 > > また、もし、現在TERASOLUNA側の仕様が、StackTraceを出力しないとなっているようであれば、 > 出力いただけることを期待致します。 > FrameworkにてStackTraceが出力されることにより、単体バグの調査等にて、 > 開発効率が上がると考えます。 > > お忙しいところ恐縮ですが、どうぞよろしく、おねがいいたします。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
登录
Nickname
预览
Post
取消
RE: blogicで発生した例外のStackTraceが出力されない現象について (2008-12-10 18:48 by
匿名
#40555)
回复
Create ticket
私も昔はまったことがあるのですが、恐らくStrutsのExceptionHandler#logExceptionでDEBUGログで出力するようになっているからです。
開発時の効率を上げたいという理由なら、log4j.propertiesでExceptionHandlerをデバッグレベルまで出力するようにすればStackTraceを出力するようになります。別の方法としては、ExceptionHandler#logExceptionをオーバーライドしたクラスを作成して、Exceptionの設定部分にSystemExceptionHandlerみたいに設定してあげればよいと思います。
(ソースも張ろうかと思ったのですが、大した話ではないので文章だけで失礼します)
今後の対応についてはTerasolunaチームのどなたかお願いします。
回复到
#40554
回复到 #40555
×
主体
Body
Reply To Message #40555 > 私も昔はまったことがあるのですが、恐らくStrutsのExceptionHandler#logExceptionでDEBUGログで出力するようになっているからです。 > > 開発時の効率を上げたいという理由なら、log4j.propertiesでExceptionHandlerをデバッグレベルまで出力するようにすればStackTraceを出力するようになります。別の方法としては、ExceptionHandler#logExceptionをオーバーライドしたクラスを作成して、Exceptionの設定部分にSystemExceptionHandlerみたいに設定してあげればよいと思います。 > (ソースも張ろうかと思ったのですが、大した話ではないので文章だけで失礼します) > > 今後の対応についてはTerasolunaチームのどなたかお願いします。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
登录
Nickname
预览
Post
取消
RE: blogicで発生した例外のStackTraceが出力されない現象について (2008-12-11 10:36 by
dancingsummer
#40576)
回复
Create ticket
ご返信ありがとうございます。
ご教授いただきましたとおり、log4j.propertiesにてStrutsのログレベルをDEBUGレベルまで落とし、blogic,ActionFormにて発生した例外のStackTraceが出力されることが確認できました。
ありがとうございます。
>(ソースも張ろうかと思ったのですが、大した話ではないので文章だけで失礼します)
はい、文章のみでご指摘いただいた内容について、理解できました。ありがとうございます。
今後の対応という点については、今回の件、Strutsのログレベルを変更することで対応できますが、Strutsのデバッグをしたいわけではないので、その上位FrameworkであるTERASOLUNAにてStackTraceを出力する対応をいただくことを期待いたします。
ありがとうございました。失礼致します。
回复到
#40555
回复到 #40576
×
主体
Body
Reply To Message #40576 > ご返信ありがとうございます。 > > ご教授いただきましたとおり、log4j.propertiesにてStrutsのログレベルをDEBUGレベルまで落とし、blogic,ActionFormにて発生した例外のStackTraceが出力されることが確認できました。 > ありがとうございます。 > > >(ソースも張ろうかと思ったのですが、大した話ではないので文章だけで失礼します) > はい、文章のみでご指摘いただいた内容について、理解できました。ありがとうございます。 > > 今後の対応という点については、今回の件、Strutsのログレベルを変更することで対応できますが、Strutsのデバッグをしたいわけではないので、その上位FrameworkであるTERASOLUNAにてStackTraceを出力する対応をいただくことを期待いたします。 > > ありがとうございました。失礼致します。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
登录
Nickname
预览
Post
取消
RE: blogicで発生した例外のStackTraceが出力されない現象について (2008-12-11 10:59 by
kimuraku
#40579)
回复
Create ticket
Action以降で発生した例外は、現状では以下のように処理されます。
----
・<exception>で例外ハンドリング対象となっていない例外の場合
⇒RequestProcessor#processException()にて、ServletExceptionでラッピングされる
・<exception>で例外ハンドリング対象となっている例外の場合
⇒ServletExceptionでラッピングされない
・かつhandler属性で例外処理ハンドラを指定しなかった場合
⇒StrutsデフォルトのExceptionHandlerが採用され、例外ログがDEBUGログとして出力されてしまう。
・かつhandler属性で例外ハンドラを指定した場合
⇒設定した例外処理ハンドラでのログ出力処理による。
----
handler属性を設定し忘れた場合にStrutsデフォルトの
ExceptionHandler#logException()が起動されてしまう件ですが、
Strutsのコード内で、ハンドラクラス名決め打ちで
ハードコーディングされてしまっているためです。
TERASOLUNA次期バージョンでは本事象に対応するために、
デフォルトのログ出力用例外ハンドラのAPIを新規追加する予定です。
グローバル例外処理時にjava.lang.Exceptionをこのハンドラで
処理することで、スタックトレースをエラーログとして出力することが
可能となります。
回复到
#40576
回复到 #40579
×
主体
Body
Reply To Message #40579 > Action以降で発生した例外は、現状では以下のように処理されます。 > ---- > ・<exception>で例外ハンドリング対象となっていない例外の場合 > ⇒RequestProcessor#processException()にて、ServletExceptionでラッピングされる > ・<exception>で例外ハンドリング対象となっている例外の場合 > ⇒ServletExceptionでラッピングされない > ・かつhandler属性で例外処理ハンドラを指定しなかった場合 > ⇒StrutsデフォルトのExceptionHandlerが採用され、例外ログがDEBUGログとして出力されてしまう。 > ・かつhandler属性で例外ハンドラを指定した場合 > ⇒設定した例外処理ハンドラでのログ出力処理による。 > ---- > > handler属性を設定し忘れた場合にStrutsデフォルトの > ExceptionHandler#logException()が起動されてしまう件ですが、 > Strutsのコード内で、ハンドラクラス名決め打ちで > ハードコーディングされてしまっているためです。 > > TERASOLUNA次期バージョンでは本事象に対応するために、 > デフォルトのログ出力用例外ハンドラのAPIを新規追加する予定です。 > グローバル例外処理時にjava.lang.Exceptionをこのハンドラで > 処理することで、スタックトレースをエラーログとして出力することが > 可能となります。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
登录
Nickname
预览
Post
取消