Using Spring
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

PortletMVC4SpringとJakartaへの移行

考えられる移住方法は2つあります。

  1. あなたは既にPortletMVC4Springを使用しており、アプリケーションをJakartaに移行したいと考えています。

  2. Spring Portlet MVC ポートレットを Spring Framework 5.0 以降を使用するように移行したい場合、PortletMVC4Spring が必要になります。

どちらの移行も簡単ですが、最初の移行の方が簡単です。

PortletMVC4SpringをJava EEからJakartaに移行する

Liferay 2025.Q3以降では、Java EEの代わりにJakartaが使用されます。 Jakarta ベースの Liferay にアップグレードする場合は、すべての javax.portlet 参照を jakarta.portlet に更新する必要があります。 これで完了です。 ただし、これらは様々な場所に潜んでいる可能性があるため、注意が必要です。

  • インポートステートメント
  • ポートレットアクションの命名規則(例: javax.portlet.actionjakarta.portlet.action に変更する必要があります)
  • web.xml、具体的にはスキーマ宣言
  • Language.properties、具体的にはポートレットのプロパティ

これらの参照をすべて更新すると、PortletMVC4Springアプリケーションは変更を加えることなく、そのまま動作します。

Spring Portlet MVCからPortletMVC4Springへの移行

Spring Framework バージョン 5.0 以降を使用するポートレットの開発を継続するには、Spring Portlet MVC から PortletMVC4Spring に移行してください。 手順は次のとおりです。

  1. build.gradle 記述子で、 spring-webmvc-portlet アーティファクトへの依存関係を com.liferay.portletmvc4spring.framework アーティファクトに置き換えることにより、Spring Framework バージョン 6 アーティファクトを使用します。

      compile group: 'com.liferay.portletmvc4spring', name: 'com.liferay.portletmvc4spring.framework', version: '5.3.2'
      compile group: 'com.liferay.portletmvc4spring', name: 'com.liferay.portletmvc4spring.security', version: '5.3.2'
    
  2. WEB-INF/portlet.xml 記述子で、 org.springframework.web.portlet.DispatcherPortlet の使用箇所を com.liferay.portletmvc4spring.DispatcherPortlet に置き換えます。

  3. Spring Portlet MVC AnnotationMethodHandlerAdapter クラスの使用箇所を PortletMVC4Spring PortletRequestMappingHandlerAdapter クラスに置き換えます。 PortletRequestMappingHandlerAdapter は、 HandlerMethod インフラストラクチャを使用します。このインフラストラクチャは、 Spring Web MVC 5.1.x の基盤となっています。

  4. Spring 構成記述子で AnnotationMethodHandlerAdapter<bean> として指定した場合は、完全修飾クラス名 org.springframework.web.portlet.mvc.annotation.AnnotationMethodHandlerAdaptercom.liferay.portletmvc4spring.mvc.method.annotation.PortletRequestMappingHandlerAdapter に置き換えてください。.

    また、以下のビーンプロパティの変更にも対応してください。

  5. Apache Commons Fileupload、 を使用している場合は、Spring の設定記述子を更新してください。

    1. このレガシーBeanを置き換えてください。

      <bean id="portletMultipartResolver"
      	class="org.springframework.web.portlet.multipart.CommonsPortletMultipartResolver" />
      

      PortletMVC4Springのこの新しい機能を使えば:

      <bean id="portletMultipartResolver"
      	class="com.liferay.portletmvc4spring.multipart.CommonsPortletMultipartResolver" />
      

      または、PortletMVC4Spring が提供するネイティブの Portlet 3.0 ファイルアップロード サポートを使用するには、 portletMultipartResolver <bean> 要素の クラスcom.liferay.portletmvc4spring.multipart.StandardPortletMultipartResolver に設定します。

    2. pom.xmlまたはbuild.gradle記述子から、以下の依存関係を削除してください:

       <dependency>
       	<groupId>commons-fileupload</groupId>
       	<artifactId>commons-fileupload</artifactId>
       </dependency>
       <dependency>
       	<groupId>commons-io</groupId>
       	<artifactId>commons-io</artifactId>
       </dependency>
      
  6. プロジェクト全体を通して、 org.springframework.web.portlet パッケージ パスの使用箇所すべてを com.liferay.portletmvc4spring に置き換えてください。

  7. PortletMVC4Springを使用してポートレットの開発を続けてください。

  8. プロジェクトを構築してデプロイします。

これで、 プロジェクトをSpring Portlet MVCからPortletMVC4Springに移行しました。