[Seasar-user:22071] Re: Weblogic 12cに関連して

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2015年 6月 18日 (木) 14:12:39 JST


小林様、
takaです。
早速の回答ありがとうございます。
以下、エラー発生の詳細です。



>> diconに記述したコンポーネントの自動登録が機能しません。
>「機能しない」とは具体的にどういう状況でしょうか?
>「自動登録」はComponentAutoRegisterとSMART deployの
>どちらでしょうか?
>可能な範囲でdiconを見せてください。


コンポーネント取得エラーが発生する箇所です。
 
★呼び出し元メソッド
    private void getMessage() {
        Map messages = (Map)Util.getComponent(message_name);
        MessageLogic logic = (MessageLogic)Util.getComponent(MessageLogic.class);
 
上記(MessageLogic)Util.getComponent(MessageLogic.class)メソッドでExceptionが発生します。
本クラスはapp.diconの自動登録でコンポーネントが登録される
想定になります。


インターフェースクラス
cicdts.online.logic.MessageLogic
実装クラス
cicdts.online.logic.impl.MessageLogicImpl


このコンポーネントは
下記の場所で登録されています。
※app.diconの抜粋 108行目
 
              <component class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister"
              >
                            <initMethod name="addClassPattern">
                                          <arg>"cicdts.online"</arg>
                                          <arg>".*LogicImpl"</arg>
                            </initMethod>
              </component>
 
 
★呼び出し先メソッド
        /**
        * S2Container からcomponentKeyに関連付けられたコンポーネントを取得する。
        * @param componentKey
        * @return
        */
        public static Object getComponent(Object componentKey) {
                try {
                        return SingletonS2ContainerFactory.getContainer().getComponent(componentKey);
                }catch(EmptyRuntimeException e) {
                        return null;
                }
        }
 
下記に、app.dicon全文を載せます。


<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD S2Container//EN"
 "http://www.seasar.org/dtd/components21.dtd">
<components>
 <include path="jsf.dicon"/>
 <include path="dao.dicon"/>
 <include path="cicdts/online/dicon/allaop.dicon"/>
 <include path="cicdts/online/dicon/allconverter.dicon"/>
 <include path="cicdts/online/dicon/allvalidator.dicon"/>
 <include path="cicdts/online/dicon/dtolist.dicon"/>
 <include path="cicdts/online/dicon/selectitem.dicon"/>
 <include path="cicdts/online/dicon/selectonemenu.dicon"/>
 <include path="cicdts/online/dicon/handler.dicon"/>
 <include path="cicdts/online/dicon/message.dicon"/>


 <component
  class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister"
 >


  <property name="instanceDef">
   @org.seasar.framework.container.deployer.InstanceDefFactory @ REQUEST
  </property>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_00.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_01.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_02.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_03.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_04.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_05.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_06.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_07.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_08.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.ct_09.action.impl"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
 </component>


 <component
  class="org.seasar.framework.container.autoregister.AspectAutoRegister"
 >
  <property name="interceptor">actionInterceptorChain</property>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online"</arg>
   <arg>".*ActionImpl"</arg>
  </initMethod>
 </component>


 <component
  class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister"
 >
  <property name="instanceDef">
   @org.seasar.framework.container.deployer.InstanceDefFactory @ SESSION
  </property>
  <initMethod name="addIgnoreClassPattern">
   <arg>"cicdts.online.dao.impl"</arg>
   <arg>"AbstractDaoImpl"</arg>
  </initMethod>
  <initMethod name="addIgnoreClassPattern">
   <arg>"cicdts.online.dto"</arg>
   <arg>"Ct_T29Dto"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.dto"</arg>
   <arg>".*Dto"</arg>
  </initMethod>
 </component>


 <component
  class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister"
 >
  <property name="instanceDef">
   @org.seasar.framework.container.deployer.InstanceDefFactory @ REQUEST
  </property>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online.validator"</arg>
   <arg>".*Validator"</arg>
  </initMethod>
 </component>


 <component
  class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister"
 >
  <initMethod name="addClassPattern">
   <arg>"cicdts.online"</arg>
   <arg>".*LogicImpl"</arg>
  </initMethod>
 </component>


 <component
  class="org.seasar.framework.container.autoregister.AspectAutoRegister"
 >
  <property name="interceptor">logicInterceptorChain</property>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online"</arg>
   <arg>".*LogicImpl"</arg>
  </initMethod>
 </component>


 <component
  class="org.seasar.framework.container.autoregister.FileSystemComponentAutoRegister"
 >
  <initMethod name="addIgnoreClassPattern">
   <arg>"cicdts.online.dao.impl"</arg>
   <arg>"AbstractDaoImpl"</arg>
  </initMethod>
  <initMethod name="addIgnoreClassPattern">
   <arg>"cicdts.online.dao.impl"</arg>
   <arg>"SelectItemDaoImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online"</arg>
   <arg>".*DaoImpl"</arg>
  </initMethod>
 </component>


 <component name="holder" class="cicdts.online.dto.Holder" instance="session" autoBinding="none" />


 <component
  class="org.seasar.framework.container.autoregister.AspectAutoRegister"
 >
  <property name="interceptor">allaop.daoInterceptorChain</property>
  <initMethod name="addIgnoreClassPattern">
   <arg>"cicdts.online.dao.impl"</arg>
   <arg>"AbstractDaoImpl"</arg>
  </initMethod>
  <initMethod name="addClassPattern">
   <arg>"cicdts.online"</arg>
   <arg>".*DaoImpl"</arg>
  </initMethod>
 </component>


</components>


以上、よろしくお願いします。






差出人: Koichi Kobayashi
送信日時: ‎2015‎年‎6‎月‎17‎日 ‎水曜日 ‎5‎:‎41
宛先: seasar-user @ ml.seasar.org





小林 (koichik) です。

問題点2が問題点1の原因になっているかもしれないので、
まずは問題点2を解決するのがよさそうです。

> diconに記述したコンポーネントの自動登録が機能しません。

「機能しない」とは具体的にどういう状況でしょうか?

「自動登録」はComponentAutoRegisterとSMART deployの
どちらでしょうか?
可能な範囲でdiconを見せてください。

org.seasarのログ出力レベルをDEBUGにするとコンポーネントの
初期化時のログが出力されるので、それも見せてください。

また、WebLogicへのデプロイ方法 (WARでとかEARでとか) や
自動登録されないクラスの所在 (WARの中のWEB-INF/classesか
WEB-INF/libの下のJarの中なのか) など、可能な限り詳細な
情報を提供してください。


On Tue, 16 Jun 2015 10:11:14 +0000, <markn0053 @ gmail.com> wrote:

> 
> 
> 重複申し訳ありません。
> 
> 
> こんにちは、
> takaと申します。
> 早速のご回答ありがとうございます。
> こちらで問題解決せず、また質問させていただきます。
> 
> 
> 
> 
> 必ずしも直接の回答でなくても、解決のヒントでもいただければと思います。
> 
> 
> 
> 
> 詳細は以下のようになります。
> 
> 
> 
> 
> 業務でSeasar2で作られたプロジェクトの
> マイグレーションを担当しています。
>  
> 既存アプリケーションが
> 下記環境で稼動します。
> WindowsServer2003
> Oracle9i
> WebLogic8
> S2-framework-2.3.10
> S2-jsf-1.0.16
>  
> この環境を下記の環境に
> 出来る限りソースを変更せずに
> 移行させたいです。
> WindowsServer2012
> Oracle12C
> WebLogic12C
>  
> 現状の問題点として2つあります。
>  
> 問題点1
> JSF画面が変換されず、JSF変換前の
> 画面がそのままクライアント側に表示されてしまいます。
>  
> ※抜粋始
> <html xmlns:m="http://www.seasar.org/maya">
> <div id="aMain" style="display:none;"><a href="../XA_00/XA_00001.html" target="mainF" class="linkLine" m:action="#{xA_00001Action.mainMenu}">
> ※抜粋終
>  
> “m”タグを使用したところが
> 変換されないで、そのままクライアントで表示されてしまいます。
> ※s2jsfで記述した画面が変換されない。
>  
> WebLogic側のログも確認しましたが
> エラーが出力されていない状態です。
> 
> 
> 
> 問題点2
> diconに記述したコンポーネントの自動登録が機能しません。
> コンポーネントを1個ずつ、diconファイルに記述すればコンポーネントが取れたことは
> 確認出来ました。
>  
>  
> 同じような環境で解決案又はアドバイスを
> 頂けたら幸いです。
>  
> 
> 以上
> 宜しくお願いします。


-- 
{
  name: "Koichi Kobayashi",
  mail: "koichik @ improvement.jp",
  blog: "http://d.hatena.ne.jp/koichik/",
  twitter: "@koichik"
}

_______________________________________________
Seasar-user mailing list
Seasar-user @ ml.seasar.org
https://ml.seasar.org/mailman/listinfo/seasar-user
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20150618/5bbc5992/attachment.html>


Seasar-user メーリングリストの案内