Message Boards

liferay 7.2 service-builder error.NoClassDefFoundError: ArgumentsResolver

Shaimaa Shalaby, modified 2 Years ago.

liferay 7.2 service-builder error.NoClassDefFoundError: ArgumentsResolver

New Member Post: 1 Join Date: 7/28/21 Recent Posts

I am working on a portal project using Liferay 7.2 and I have created a service by using a service-builder template, I followed the tutorial step by step. but I am getting the following error when I deploy the service.

2021-07-28 20:24:59.092 ERROR [pipe-start 2245][RatingPersistenceImpl:93] bundle com.arabiait.mawareeth.service:1.0.0 (2245)[com.arabiait.mawareeth.service.persistence.impl.RatingPersistenceImpl(5523)] : The activate method has thrown an exception java.lang.NoClassDefFoundError: com/liferay/portal/kernel/dao/orm/ArgumentsResolver at com.arabiait.mawareeth.service.persistence.impl.RatingPersistenceImpl.activate(RatingPersistenceImpl.java:1997) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

=======================================================================

there is a nested static class that implements this ArgumentResolver interface already generated in the RatingPersistenceImpl.java as follows:

private static class RatingModelArgumentsResolver
        implements ArgumentsResolver {
}

========================================================================== the line that throws the exception is inside the RatingPersistenceImpl.java as follows:

_argumentsResolverServiceRegistration = _bundleContext.registerService(
            ArgumentsResolver.class, new RatingModelArgumentsResolver(),
            MapUtil.singletonDictionary(
                "model.class.name", Rating.class.getName()));

service.xml

<?xml version="1.0"?>
<!DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 7.3.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_7_3_0.dtd">

<service-builder dependency-injector="ds" package-path="com.arabiait.mawareeth">
    <namespace>MW</namespace>
    <!--<entity data-source="sampleDataSource" local-service="true" name="Foo" remote-service="false" session-factory="sampleSessionFactory" table="foo" tx-manager="sampleTransactionManager uuid="true"">-->
    <entity local-service="true" name="Rating" remote-service="true" uuid="true">

        <!-- PK fields -->

        <column name="ratingId" primary="true" type="long" />

        <!-- Group instance -->

        <column name="groupId" type="long" />

        <!-- Audit fields -->

        <column name="companyId" type="long" />
        <column name="userId" type="long" />
        <column name="userName" type="String" />
        <column name="createDate" type="Date" />
        <column name="modifiedDate" type="Date" />

        <!-- Other fields -->

        <!-- Order -->
        <column name="name" type="String"></column>
        <column name="comment" type="String"></column>
        <column name="rate" type="int"></column>
        <column name="pageName" type="String"></column>

        

        <!-- References -->

        <reference entity="AssetEntry" package-path="com.liferay.portlet.asset" />
        <reference entity="AssetTag" package-path="com.liferay.portlet.asset" />
    </entity>
</service-builder>

If someone can help me, I will be so grateful as I am overwhelmed by this issue for 3 days till now.

Scarletake Bwi, modified 2 Years ago.

RE: liferay 7.2 service-builder error.NoClassDefFoundError: ArgumentsResolv

Expert Posts: 326 Join Date: 12/20/10 Recent Posts

try this.

reflash gradle

buile from gradle tasks

in left down corner, your server, point your module, right click, redeploy it.