Struts2+AJAX+JSON


プロジェクトではajaxを使用してデータにアクセスする必要がありますが、開発中に次の異常が発生しました.
com.googlecode.jsonplugin.JSONExeption: 
java.lang.IllegalAccessException: Class com.googlecode.jsonplugin.JSONWriter can not access a member of class org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper with modifiers "public"

Struts 2.xmlは次のように構成されています.
<package name="example" extends="json-default">
		<action name="taskInstanceCount" class="taskInstanceAction" method="taskInstanceCount">
			<result type="json"/>
		</action>
	</package>

問題の原因を見つけるのに長い時間がかかりました.
jsonオブジェクトの内容はActionの属性名:属性値形式であるが、属性はgetメソッドに基づいて位置決めされているため、Actionにインタフェースタイプの属性が存在し、対応する属性のgetメソッドが存在する場合、このような異常が報告される.
解決方法:Actionでインタフェースタイプ属性のgetメソッドを削除する.