SAFluteからLastaFluteの移行
移行の概要
TODO jflute
DBFluteの設定をLasta用に
- DBFluteエンジンの最新にアップグレード
- basicInfoMap.dfprop の targetContainer を lasta_di に
- dependencyInjectionMap.dfprop を最新に
- 再自動生成
pom.xml の移行
依存ライブラリが減り、かつ、lastafluteの依存を利用するようになるので、ずいぶんとスッキリします。 アプリで独自に追加した依存ライブラリに注意しながら移行していきましょう。
baseのpom.xmlの環境系
distributeManagementなど環境系の設定からSeasarのものを削除
- distributionManagementからSeasarを削除
- repositoriesからSeasar, amaterasを削除
- pluginRepositoriesからSeasarを削除
baseのpom.xmlのdependencies
properties, dependencyManagement, dependenciesは、LastaFluteの Example を参考に修正する。主には以下のような感じ。
- DBFluteランタイムを最新にアップグレード
- UTFluteを seasar から lastaflute に変更
- SAFluteを 外す
- LastaFluteを入れる (もしJSPなら taglib も一緒に)
- Logback移行は、後で別途やった方がいいかと
commonのpom.xmlのdependencies
同じく dependencies は、ごっそり、LastaFluteのExampleのやつに置き換える。 アプリで独自に追加しているものは、その後で追加する。
パッケージ名やクラス名の移行
パッケージ名は、importの編成で
全部にimportの編成をどーん
クラス名は、ある程度は一括置換で
明らかなものは一括置換で。
- S2Container to LaContainer
- SingletonS2Container to SingletonLaContainer
- MySystemException to LaSystemException
- ApplicationBaseException to LaApplicationException
- S2ActionMapping to ActionMapping
- ActionExecuteMeta to ActionRuntimeMeta
- TypicalBaseAction to TypicalAction
- TypicalLoginBaseLogic to TypicalLoginAssist
- TypicalUserBaseBean to TypicalUserBean
- InvertibleCipher to InvertibleCryptographer
- GodHandableActionWrapper to GodHandableAction
置換した後は、もう一回importの編成をどーん
AssistantDirectorの移行
OptionalなんとかDirectorがリファクタリングされました。
- OptionalAssistDirection
- OptionalCoreDirection
- OptionalDbDirection
- OptionalWebDirection
Di xml への移行
組み込まれてアプリでは不要になった Di xml を削除
アプリで独自にカスタマイズしている場合は要注意。それがなければ、以下を削除。
- creator.dicon
- jdbc.dicon
- s2container.dicon
- aop++.dicon
- customizer.dicon
- convention.dicon
- dbflute.dicon ※先ほどのDBFluteの自動生成で、代わりに dbflute.xml があるはず
saflute_assist++.dicon を lastaflute に
これは、そのまま。lastaflute_assist++.dicon に変更。
DTDのヘッダー記述の修正
アプリの dicon すべてのDTDのヘッダーを LastaDi のものに修正。
拡張子を dicon から xml へ
アプリの dicon すべてのDTDのヘッダーを LastaDi のものに修正。
dicon内の、includeの定義もすべて .dicon を .xml に修正。
名前変更された Di xml への include を修正
- saflute は、lastaflute に
- aop.dicon ヘの include は削除
タグの名前で変わったもの
- initMethod to ...
- postConstruct
- destroyMethod to ...
- preDestroy
Actionクラスの移行
JSPを戻すときは asHtml()
return path_Xxx_jsp; ではなく、return asHtml(path_Xxx_jsp) になります。
戻り値も、String ではなく HtmlResponse になります。