<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>How to use AopService in my FooLocalServiceImpl or FooServiceImpl classes</title>
  <link rel="self" href="https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=119429377" />
  <subtitle>How to use AopService in my FooLocalServiceImpl or FooServiceImpl classes</subtitle>
  <id>https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=119429377</id>
  <updated>2026-04-07T05:37:41Z</updated>
  <dc:date>2026-04-07T05:37:41Z</dc:date>
  <entry>
    <title>RE: How to use AopService in my FooLocalServiceImpl or FooServiceImpl class</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119456960" />
    <author>
      <name>Nader Jafari</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119456960</id>
    <updated>2020-06-21T11:16:01Z</updated>
    <published>2020-06-21T11:16:01Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;I resolved this issue with updating my workspace :&lt;em&gt;&lt;br&gt;&lt;/em&gt;&lt;em&gt;&lt;/em&gt;&lt;pre&gt;&lt;code&gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; classpath group: "com.liferay", name: "com.liferay.gradle.plugins.workspace", version: "2.2.11"&lt;/code&gt;&lt;/pre&gt;&lt;br&gt;in setting.gradle.&lt;em&gt;&lt;br&gt;&lt;/em&gt;&lt;em&gt;Now everything is OK after executing buildService task. &lt;br&gt;&lt;/em&gt;&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Nader Jafari</dc:creator>
    <dc:date>2020-06-21T11:16:01Z</dc:date>
  </entry>
  <entry>
    <title>RE: How to use AopService in my FooLocalServiceImpl or FooServiceImpl class</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119451650" />
    <author>
      <name>Nader Jafari</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119451650</id>
    <updated>2020-06-19T16:11:26Z</updated>
    <published>2020-06-19T16:11:26Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;Hi David&lt;br&gt;&lt;br&gt;I just want to implement a simple tetsIntegration module that explained here :&lt;br&gt;&lt;br&gt;https://liferay.dev/forums/-/message_boards/message/119429731&lt;br&gt;&lt;br&gt;But there aren't any Document for that.&lt;br&gt;&lt;br&gt;I saw some example in the GitHub and i think it's necessary if i want to use LocalService/Service in my Test classes , it should have :&lt;br&gt;&lt;pre&gt;&lt;code&gt;@Component(
    property = "model.class.name=com.liferay.sample.model.Foo",
    service = AopService.class
)&lt;/code&gt;&lt;/pre&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Here is my project in GitHub :&lt;br&gt;&lt;br&gt;https://github.com/naderjafari/liferay-todo-list/tree/Liferay-7.2.1-fix-test&lt;br&gt;&lt;br&gt;My test class :&lt;br&gt;&lt;br&gt;https://github.com/naderjafari/liferay-todo-list/blob/Liferay-7.2.1-fix-test/liferay-todo-list-test/src/testIntegration/java/com/chberndt/liferay/todo/list/service/persistence/test/TaskLocalServiceTest.java&lt;br&gt;&lt;br&gt;May service class:&lt;br&gt;&lt;br&gt;https://github.com/naderjafari/liferay-todo-list/blob/Liferay-7.2.1-fix-test/liferay-todo-list-service/src/main/java/com/chberndt/liferay/todo/list/service/impl/TaskLocalServiceImpl.java&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Nader Jafari</dc:creator>
    <dc:date>2020-06-19T16:11:26Z</dc:date>
  </entry>
  <entry>
    <title>RE: How to use AopService in my FooLocalServiceImpl or FooServiceImpl class</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119430132" />
    <author>
      <name>David H Nebinger</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119430132</id>
    <updated>2020-06-17T21:06:54Z</updated>
    <published>2020-06-17T21:06:54Z</published>
    <summary type="html">There is just so much wrong here, but let&amp;#39;s start with the major issue...&lt;br /&gt;&lt;br /&gt;You should not modify generated sources. Period. And FooLocalServiceBaseImpl is generated and therefore not to be monkeyed with. All of your code goes to FooLocalServiceImpl, period.&lt;br /&gt;&lt;br /&gt;Outside of that, you shouldn&amp;#39;t force a class to become another type of service. FooLocalServiceBaseImpl already implements what it should, including AopService. Why you are trying to have it re-implement it again is unclear.&lt;br /&gt;&lt;br /&gt;So I don&amp;#39;t know where you got your marching orders on what to do or why, but they are mostly just plain wrong.</summary>
    <dc:creator>David H Nebinger</dc:creator>
    <dc:date>2020-06-17T21:06:54Z</dc:date>
  </entry>
  <entry>
    <title>How to use AopService in my FooLocalServiceImpl or FooServiceImpl classes</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119429376" />
    <author>
      <name>Nader Jafari</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=119429376</id>
    <updated>2020-06-17T18:05:11Z</updated>
    <published>2020-06-17T18:05:11Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;Hi guys&lt;br&gt;I wanna use AopService in my LocalServiceImpl and ServiceImpl classes in a service-builder module in Liferay 7.2.1 GA2&lt;br&gt;So i added bellow @Component to my FooLocalServiceImp class.&lt;br&gt;&lt;pre&gt;&lt;code&gt;@Component(
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;property = "model.class.name=com.liferay.sample.model.Foo",
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;service = AopService.class
)
&lt;/code&gt;&lt;/pre&gt;Then i just run buildService gradle task &lt;br&gt;Next when i ran delpoy task i faced bellow error&amp;nbsp; in my console:&lt;br&gt;&lt;br&gt;&lt;em&gt;error&amp;nbsp; : Class com.liferay.sample.service.impl.FooLocalServiceImpl is not assignable to specified service com.liferay.portal.aop.AopService&lt;/em&gt;&lt;br&gt;&lt;em&gt;&lt;/em&gt;&lt;br&gt;Then i googled about this and drill to Liferay source So understand i should implement&amp;nbsp; AopService in the FooLocalServiceBaseImpl abstract class and override two functions as bellow : &lt;br&gt;&lt;pre&gt;&lt;code&gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; @Override
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; public Class&amp;lt;!--?--&amp;gt;[] getAopInterfaces() {
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; return new Class&amp;lt;!--?--&amp;gt;[] {
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; FooLocalService.class, IdentifiableOSGiService.class,
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; PersistedModelLocalService.class
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; };
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }
&lt;/code&gt;&lt;/pre&gt;&lt;pre&gt;&lt;code&gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; @Override
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; public void setAopProxy(Object aopProxy) {
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; fooLocalService = (FooLocalService)aopProxy;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }&lt;/code&gt;&lt;/pre&gt;&lt;br&gt;&lt;br&gt;But FooLocalServiceBaseImpl regenerated on every build-service!&lt;br&gt;&lt;strong&gt;is there any way to prevent this?&lt;/strong&gt;&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Nader Jafari</dc:creator>
    <dc:date>2020-06-17T18:05:11Z</dc:date>
  </entry>
</feed>
