<?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>API using the same code as Job Scheduler doens't create/update content</title>
  <link rel="self" href="https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=113570520" />
  <subtitle>API using the same code as Job Scheduler doens't create/update content</subtitle>
  <id>https://liferay.dev/c/message_boards/find_thread?p_l_id=119785294&amp;threadId=113570520</id>
  <updated>2026-04-03T19:08:44Z</updated>
  <dc:date>2026-04-03T19:08:44Z</dc:date>
  <entry>
    <title>RE: API using the same code as Job Scheduler doens't create/update content</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113633566" />
    <author>
      <name>Amos Fong</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113633566</id>
    <updated>2019-05-14T17:47:41Z</updated>
    <published>2019-05-14T17:47:41Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;Where are you seeing it not update? is it updated in the DB?&lt;br&gt;&lt;br&gt;Maybe your entire method is under one transaction?&lt;br&gt;&lt;br&gt;Maybe you should call the other service method because it does other things like updates the AssetEntry and reindexes:&lt;br&gt;&lt;pre&gt;&lt;code&gt;@Indexable(type = IndexableType.REINDEX)
@Override
public JournalArticle updateArticle(
      long userId, long groupId, long folderId, String articleId,
      double version, Map&amp;lt;locale, string&amp;gt; titleMap,
      Map&amp;lt;locale, string&amp;gt; descriptionMap, String content,
      String ddmStructureKey, String ddmTemplateKey, String layoutUuid,
      int displayDateMonth, int displayDateDay, int displayDateYear,
      int displayDateHour, int displayDateMinute, int expirationDateMonth,
      int expirationDateDay, int expirationDateYear,
      int expirationDateHour, int expirationDateMinute,
      boolean neverExpire, int reviewDateMonth, int reviewDateDay,
      int reviewDateYear, int reviewDateHour, int reviewDateMinute,
      boolean neverReview, boolean indexable, boolean smallImage,
      String smallImageURL, File smallImageFile,
      Map&amp;lt;string, byte[]&amp;gt; images, String articleURL,
      ServiceContext serviceContext)
   throws PortalException {&amp;lt;/string,&amp;gt;&amp;lt;/locale,&amp;gt;&amp;lt;/locale,&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Amos Fong</dc:creator>
    <dc:date>2019-05-14T17:47:41Z</dc:date>
  </entry>
  <entry>
    <title>RE: API using the same code as Job Scheduler doens't create/update content</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113583051" />
    <author>
      <name>Alex Camaroti</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113583051</id>
    <updated>2019-05-09T13:01:18Z</updated>
    <published>2019-05-09T13:01:18Z</published>
    <summary type="html">I also saw that the contents only update when the service finishes its processing.</summary>
    <dc:creator>Alex Camaroti</dc:creator>
    <dc:date>2019-05-09T13:01:18Z</dc:date>
  </entry>
  <entry>
    <title>API using the same code as Job Scheduler doens't create/update content</title>
    <link rel="alternate" href="https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113570519" />
    <author>
      <name>Alex Camaroti</name>
    </author>
    <id>https://liferay.dev/c/message_boards/find_message?p_l_id=119785294&amp;messageId=113570519</id>
    <updated>2019-05-08T13:44:12Z</updated>
    <published>2019-05-08T13:44:12Z</published>
    <summary type="html">&lt;html&gt;&lt;head&gt;&lt;/head&gt;&lt;body&gt;Hello guys,&lt;br&gt;&lt;br&gt;&amp;nbsp; My situation is:&lt;br&gt;&lt;br&gt;&amp;nbsp; I have a scheduled job already that create/update around 1 thousand of contents. The total processing time is 5 hours.&lt;br&gt;&lt;br&gt;Job calling method:&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;protected void doReceive(Message message) throws Exception {
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;try {
&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;ImportContent.getInstace().init();
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;} catch (Exception e) {
&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;e.printStackTrace();
&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;registerScheduler();
    }&lt;/code&gt;&lt;/pre&gt;&lt;br&gt;My method is like:&lt;pre&gt;&lt;code&gt;private void init() {
//a lot of rules
 JournalArticleLocalServiceUtil.updateJournalArticle(article);
}&lt;/code&gt;&lt;/pre&gt;​​​​​​​&lt;br&gt;I did an &lt;strong&gt;api&lt;/strong&gt;&amp;nbsp;that I access on &lt;strong&gt;api/jsonws&lt;/strong&gt;&amp;nbsp;that calls the same method.&lt;br&gt;and when it is running, all the logs run, but the content itself doenst update/create (depending of the rule).&amp;nbsp;&lt;pre&gt;&lt;code&gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;public String callImportContentByJob(){
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;try {
&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;ImportContent.getInstace().init();
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;} catch (PortalException e) {
&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;System.out.println(e.getMessage());
&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;e.printStackTrace();
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;} catch (IOException e) {
&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;System.out.println(e.getMessage());
&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;e.printStackTrace();
&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;return "The execution is finished.";
&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;}&lt;/code&gt;&lt;/pre&gt;​​​​​​​My question is: what should I do in this case. Does it has some problem If my api spend more than a specific time?&lt;br&gt;I dont have idea what's happening as I'm using the same code.&lt;/body&gt;&lt;/html&gt;</summary>
    <dc:creator>Alex Camaroti</dc:creator>
    <dc:date>2019-05-08T13:44:12Z</dc:date>
  </entry>
</feed>
