HOT deployのS2StrutsとDBFluteでエラー(泣)

 原因が全然分からないのですが、DBFluteで生成したコードがある状態で、S2StrutsをHOT deployで動かすとTomcatの起動時にエラーが出て動かないのです。詳細な環境は、以下の通り。

で、発生するエラーは以下のような感じです。ここでは、packageがSMART deployのルートパッケージです。

ERROR 2007-02-04 19:33:29,671 [main] Unable to initialize Struts ActionServlet due to an unexpected exception or error thrown, so marking the servlet as unavailable.  Most likely, this is due to an incorrect or missing library dependency.
java.lang.LinkageError: Class package/db/allcommon/cbean/sqlclause/OrderByClause violates loader constraints
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1786)
	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1048)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1506)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1385)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2365)
	at java.lang.Class.privateGetPublicMethods(Class.java:2488)
	at java.lang.Class.getMethods(Class.java:1406)
	at org.seasar.framework.beans.impl.BeanDescImpl.setupPropertyDescs(BeanDescImpl.java:517)
	at org.seasar.framework.beans.impl.BeanDescImpl.<init>(BeanDescImpl.java:102)
	at org.seasar.framework.beans.factory.BeanDescFactory.getBeanDesc(BeanDescFactory.java:51)
	at org.seasar.struts.lessconfig.factory.ConstantStrutsConfigAnnotationHandler.createStrutsActionFormConfig(ConstantStrutsConfigAnnotationHandler.java:201)
	at org.seasar.struts.lessconfig.autoregister.ClassComparator.compare(ClassComparator.java:36)
	at java.util.Arrays.mergeSort(Arrays.java:1284)
	at java.util.Arrays.mergeSort(Arrays.java:1295)
	at java.util.Arrays.mergeSort(Arrays.java:1296)
	at java.util.Arrays.mergeSort(Arrays.java:1295)
	at java.util.Arrays.mergeSort(Arrays.java:1295)
	at java.util.Arrays.mergeSort(Arrays.java:1295)
	at java.util.Arrays.sort(Arrays.java:1223)
	at org.seasar.struts.lessconfig.autoregister.ClassComparator.sort(ClassComparator.java:57)
	at org.seasar.struts.lessconfig.autoregister.impl.StrutsConfigRegisterImpl.register(StrutsConfigRegisterImpl.java:73)
	at org.seasar.struts.lessconfig.plugin.AutoStrutsConfigRegisterPlugIn.register(AutoStrutsConfigRegisterPlugIn.java:101)
	at org.seasar.struts.lessconfig.plugin.AutoStrutsConfigRegisterPlugIn.init(AutoStrutsConfigRegisterPlugIn.java:80)
	at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:884)
	at org.apache.struts.action.ActionServlet.init(ActionServlet.java:356)
	at javax.servlet.GenericServlet.init(GenericServlet.java:212)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:879)
	at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:767)
	at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3483)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:3709)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:776)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:759)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:537)
	at org.apache.catalina.core.StandardHostDeployer.addChild(StandardHostDeployer.java:662)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.apache.commons.beanutils.MethodUtils.invokeMethod(MethodUtils.java:216)
	at org.apache.commons.digester.SetNextRule.end(SetNextRule.java:216)
	at org.apache.commons.digester.Rule.end(Rule.java:230)
	at org.apache.commons.digester.Digester.endElement(Digester.java:1130)
	at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
	at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
	at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
	at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
	at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
	at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
	at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
	at org.apache.commons.digester.Digester.parse(Digester.java:1666)
	at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:338)
	at org.apache.catalina.core.StandardHost.install(StandardHost.java:761)
	at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:438)
	at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:372)
	at org.apache.catalina.startup.HostConfig.start(HostConfig.java:784)
	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:330)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1155)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:696)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1147)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:310)
	at org.apache.catalina.core.StandardService.start(StandardService.java:449)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:2212)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:458)
	at org.apache.catalina.startup.Catalina.execute(Catalina.java:345)
	at org.apache.catalina.startup.Catalina.process(Catalina.java:129)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:150)

COOL deployだとエラー出ませんし、DBFluteのdiconファイルを読み込まなければ、やっぱりエラー出ないので、クラスローダがらみの『混ぜるな、キケン!』なのは、何となく予想がつきますが。

はたして、どう対処したらいいんだろう。DBFlute用のcreatorでも作るしかないのでしょうか。。。

2007/02/05追記:
解決しました。コメントでkoichikさんに教えて頂いたのを元に試しにconvention.diconのルートパッケージを変更してみたところ、エラーが出なくなるのを確認しました。

というわけで、私の中ではトラブルを避けるためにルートパッケージ配下にはSMART deployに関係ないファイルを含めないようにすることにしました。