Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-86835

Service builder generates code that calls API not available in 7.1 GA release



      Steps to reproduce:

      1. Clone the https://github.com/liferay/liferay-blade-samples repository
      2. Checkout the 7.1 branch
      3. Navigate to liferay-workspace/apps/service-builder/basic/basic-service
      4. Confirm that service.xml uses the 7.1.0 service builder DTD. If it does not, update service.xml to use it.
      5. Run blade gw buildService and confirm it runs to completion
      6. Add compileOnly group: "com.liferay", name: "com.liferay.petra.string", version: "2.0.0" to the dependencies section in build.gradle to account for the code auto-generating classes from petra-string
      7. Run blade gw compileJava

      Expectation is that the compilation succeeds, because all the needed libraries for CE GA1 are present on the classpath. Actual behavior is the compilation fails, because service builder is actually using new API added to BasePersistenceImpl added to a version of com.liferay.portal.kernel that was released after GA1.

      Note: You can also reproduce this by updating a module in 7.1.x (for example, modules/apps/portal-lock/portal-lock-service) and adding serviceBuilder group: "com.liferay", name: "com.liferay.portal.tools.service.builder", version: "1.0.237" to the dependencies section in build.gradle and repeating steps 4-7.


          Issue Links



              • Assignee:
                brian.chan Brian Chan
                minhchau.dang Minhchau Dang
                Participants of an Issue:
                Recent user:
                Victor Ware
              • Votes:
                1 Vote for this issue
                4 Start watching this issue


                • Created:
                  Days since last comment:
                  19 weeks, 6 days ago