{"id":3367,"date":"2020-05-06T18:31:08","date_gmt":"2020-05-06T19:01:08","guid":{"rendered":"https:\/\/ultering.com\/it4us\/?p=3367"},"modified":"2021-01-21T15:30:36","modified_gmt":"2021-01-21T16:00:36","slug":"wildfly-jboss-wflyjpa0061-persistence-unitname-was-not-specified-and-multiple-persistence-unit-definitions","status":"publish","type":"post","link":"https:\/\/ultering.com\/it4us\/?p=3367","title":{"rendered":"WILDFLY\/JBOSS: WFLYJPA0061: Persistence unitName was not specified and double persistence unit definitions"},"content":{"rendered":"<p>&nbsp;<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_73 counter-hierarchy ez-toc-counter ez-toc-white ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-69f72468781de\" class=\"ez-toc-cssicon-toggle-label\"><span class><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\" \/><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\" \/><\/svg><\/span><\/span><\/label><input type=\"checkbox\" id=\"ez-toc-cssicon-toggle-item-69f72468781de\" checked aria-label=\"Toggle\"><nav><ul class=\"ez-toc-list ez-toc-list-level-1 \"><li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3EPROBLEM\" title=\"&gt;PROBLEM\">&gt;PROBLEM<\/a><\/li><li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3ESOLUTION\" title=\"&gt;SOLUTION\">&gt;SOLUTION<\/a><\/li><li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3EWHAT_NOT_TO_DO\" title=\"&gt;WHAT NOT TO DO\">&gt;WHAT NOT TO DO<\/a><ul class=\"ez-toc-list-level-4\"><li class=\"ez-toc-heading-level-4\"><ul class=\"ez-toc-list-level-4\"><li class=\"ez-toc-heading-level-4\"><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3EWRONG_EXAMPLE\" title=\"&gt;WRONG EXAMPLE\">&gt;WRONG EXAMPLE<\/a><\/li><li class=\"ez-toc-page-1 ez-toc-heading-level-4\"><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3ECONCLUSIONS_FROM_THE_WRONG_EXAMPLE\" title=\"&gt;CONCLUSIONS FROM THE WRONG EXAMPLE\">&gt;CONCLUSIONS FROM THE WRONG EXAMPLE<\/a><\/li><li class=\"ez-toc-page-1 ez-toc-heading-level-4\"><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3EWHY\" title=\"&gt;WHY?\">&gt;WHY?<\/a><\/li><\/ul><\/li><\/ul><\/li><li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3ETIP_%E2%80%93_EXTRA_INFORMATION\" title=\"&gt;TIP &#8211; EXTRA INFORMATION\">&gt;TIP &#8211; EXTRA INFORMATION<\/a><\/li><li class=\"ez-toc-page-1 ez-toc-heading-level-2\"><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/ultering.com\/it4us\/?p=3367\/#%3EENV\" title=\"&gt;ENV\">&gt;ENV<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"%3EPROBLEM\"><\/span><strong>&gt;PROBLEM<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Creating a persistence.xml file having two persistence units caused the following Wildfly&#8217;s error message:<\/p>\n<p>Caused by: java.lang.IllegalArgumentException: WFLYJPA0061: Persistence unitName was not specified and there are 2 persistence unit definitions in application deployment deployment &#8220;todos.war&#8221;. Either change the application deployment to have only one persistence unit definition or specify the unitName for each reference to a persistence unit.<\/p>\n<p>The persistence.xml configuration used was:<\/p>\n<p>&nbsp;<\/p>\n<pre>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;persistence version=\"2.1\"\n   xmlns=\"http:\/\/xmlns.jcp.org\/xml\/ns\/persistence\" xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\"\n   xsi:schemaLocation=\"\n        http:\/\/xmlns.jcp.org\/xml\/ns\/persistence\n        http:\/\/xmlns.jcp.org\/xml\/ns\/persistence\/persistence_2_1.xsd\"&gt;\n        \n    &lt;persistence-unit name=\"primary\"&gt;\n       &lt;jta-data-source&gt;java:jboss\/datasources\/TasksJsfQuickstartDS&lt;\/jta-data-source&gt;\n       &lt;properties&gt;\n          &lt;!-- Properties for Hibernate --&gt;\n          &lt;property name=\"hibernate.hbm2ddl.auto\" value=\"create-drop\" \/&gt;\n          &lt;property name=\"hibernate.show_sql\" value=\"false\" \/&gt;\n       &lt;\/properties&gt;\n    &lt;\/persistence-unit&gt;\n\n    &lt;persistence-unit name=\"pgTestoneDS\"&gt;\n       &lt;jta-data-source&gt;java:jboss\/datasources\/pgTestoneDS&lt;\/jta-data-source&gt;\n       &lt;properties&gt;\n&lt;!--           &lt;property name=\"hibernate.hbm2ddl.auto\" value=\"create-drop\" \/&gt; --&gt;\n&lt;!--           &lt;property name=\"hibernate.show_sql\" value=\"false\" \/&gt; --&gt;\n       &lt;\/properties&gt;\n    &lt;\/persistence-unit&gt;\n\n&lt;\/persistence&gt;\n<\/pre>\n<p>&nbsp;<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%3ESOLUTION\"><\/span>&gt;SOLUTION<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>&nbsp;<\/p>\n<p>After some failures, I&#8217;ve decided to repeat the same configuration but doing things in a different order.<br>\nThe following order was successful:<\/p>\n<p>1. Refactor the code that concerns the primary persistent-unit (or the initial persistent-unit, whatever the name it has).<\/p>\n<p>2. Create a qualifier for this first persistent-unit.<\/p>\n<p>3. Refactor the DAO layer in order to apply its qualifier where the entity manager is injected.<\/p>\n<p>4. Recompile the project and perform a full deployment.<\/p>\n<p>5. Start the server and test.<\/p>\n<p>6. Stop the server<\/p>\n<p>7. If not successful, fix the code revising from step 1.<\/p>\n<p>8. if successful, add the second persistent-unit to persistence.xml file.<\/p>\n<p>9. Create the database manager class, its qualifier, the entities, and DAO layer always using the respective qualifier for the second persistent-unit to differ from the initial code implemented for the first persistent-unit.<\/p>\n<p>10. Recompile the project and perform a full deployment.<\/p>\n<p>11. Start the server and test.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<div><\/div>\n<div><noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-3381\" src=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success.jpg\" alt width=\"1366\" height=\"737\" srcset=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success.jpg 1366w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success-300x162.jpg 300w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success-768x414.jpg 768w\" sizes=\"(max-width: 1366px) 100vw, 1366px\"><\/noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-3381 lazyload\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201366%20737%22%3E%3C%2Fsvg%3E\" alt width=\"1366\" height=\"737\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201366%20737%22%3E%3C%2Fsvg%3E 1366w\" sizes=\"(max-width: 1366px) 100vw, 1366px\" data-srcset=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success.jpg 1366w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success-300x162.jpg 300w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success-768x414.jpg 768w\" data-src=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_double_persistent_unit_success.jpg\"><\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong>SOURCE CODE<\/strong><\/p>\n<p><a href=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/todos_double_units_200506_210948.7z\">todos_double_units_200506_210948<\/a><\/p>\n<p>&nbsp;<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%3EWHAT_NOT_TO_DO\"><\/span>&gt;WHAT NOT TO DO<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Do not comment or remove the subsystem JPA policy from standalone.xml file.<br>\nI found this solution at some sites, but in this case, was not a good idea.<br>\nCheck the reasons below.<\/p>\n<h4><\/h4>\n<h4><span class=\"ez-toc-section\" id=\"%3EWRONG_EXAMPLE\"><\/span><span style=\"color: #ff0000; font-size: 12pt;\">&gt;WRONG EXAMPLE<\/span><span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Edit $SERVER_INSTALL_DIR\\standalone\\configuration\\standalone.xml file.<\/p>\n<p>Find the following configuration:<\/p>\n<p>&nbsp;<\/p>\n<pre>&lt;subsystem xmlns=\"urn:jboss:domain:jpa:1.1\"&gt;\n\t&lt;jpa default-datasource=\"\" default-extended-persistence-inheritance=\"DEEP\"\/&gt;\n&lt;\/subsystem&gt;\n<\/pre>\n<p>Comment the configuration like this (line per line):<\/p>\n<p>&nbsp;<\/p>\n<pre>&lt;!--        &lt;subsystem xmlns=\"urn:jboss:domain:jpa:1.1\"&gt;--&gt;\n&lt;!--            &lt;jpa default-datasource=\"\" default-extended-persistence-inheritance=\"DEEP\"\/&gt;--&gt;\n&lt;!--        &lt;\/subsystem&gt;--&gt;\n<\/pre>\n<p>&nbsp;<\/p>\n<p>Like this:<\/p>\n<p>&nbsp;<\/p>\n<p><noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-3369\" src=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933.jpg\" alt width=\"1345\" height=\"681\" srcset=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933.jpg 1345w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933-300x152.jpg 300w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933-768x389.jpg 768w\" sizes=\"(max-width: 1345px) 100vw, 1345px\"><\/noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-3369 lazyload\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201345%20681%22%3E%3C%2Fsvg%3E\" alt width=\"1345\" height=\"681\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201345%20681%22%3E%3C%2Fsvg%3E 1345w\" sizes=\"(max-width: 1345px) 100vw, 1345px\" data-srcset=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933.jpg 1345w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933-300x152.jpg 300w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933-768x389.jpg 768w\" data-src=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_multiple_persistence_unit_definitions_200506_153933.jpg\"><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h4><span class=\"ez-toc-section\" id=\"%3ECONCLUSIONS_FROM_THE_WRONG_EXAMPLE\"><\/span><span style=\"color: #ff0000; font-size: 12pt;\">&gt;CONCLUSIONS FROM THE WRONG EXAMPLE<\/span><span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>When the application starts, it fails to load the entity managers.<\/p>\n<p>&nbsp;<\/p>\n<p><noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-3382\" src=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue.jpg\" alt width=\"1366\" height=\"768\" srcset=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue.jpg 1366w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue-300x169.jpg 300w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue-768x432.jpg 768w\" sizes=\"(max-width: 1366px) 100vw, 1366px\"><\/noscript><img decoding=\"async\" class=\"alignnone size-full wp-image-3382 lazyload\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201366%20768%22%3E%3C%2Fsvg%3E\" alt width=\"1366\" height=\"768\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201366%20768%22%3E%3C%2Fsvg%3E 1366w\" sizes=\"(max-width: 1366px) 100vw, 1366px\" data-srcset=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue.jpg 1366w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue-300x169.jpg 300w, https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue-768x432.jpg 768w\" data-src=\"https:\/\/ultering.com\/it4us\/wp-content\/uploads\/2020\/05\/wildfly_standalone_removing_subsystem_jpa_issue.jpg\"><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h4><span class=\"ez-toc-section\" id=\"%3EWHY\"><\/span><span style=\"color: #ff0000; font-size: 12pt;\">&gt;WHY?<\/span><span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Int this subsystem JPA configuration, in the server&#8217;s standalone.xml file,&nbsp; there is the following property:<\/p>\n<p><strong><br>\ndefault-extended-persistence-inheritance<\/strong><br>\n<em>Controls how JPA extended persistence context (XPC) inheritance is performed. &#8216;DEEP&#8217; shares the extended persistence context at the top bean level. &#8216;SHALLOW&#8217; the extended persistece context is only shared with the parent bean (never with sibling beans).<\/em><\/p>\n<p>from:&nbsp; <a href=\"https:\/\/wildscribe.github.io\/WildFly\/11.0\/subsystem\/jpa\/index.html\">wildscribe.github.io\/WildFly\/11.0\/subsystem\/jpa\/index.html<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>This property is responsible for making available the bean instance, following a criterion.<br>\nCheck next, what the Wildfly&#8217;s documentation tells us about this:<\/p>\n<p><strong>&#8211; Extended Persistence Context Inheritance<\/strong><br>\n<em>JPA 2.2 specification section 7.6.3.1<\/em><br>\n<em>If a stateful session bean instantiates a stateful session bean (executing in the same EJB container instance) which also has such an <\/em><br>\n<em>extended persistence context with the same synchronization type, the extended persistence context of the first stateful session bean <\/em><br>\n<em>is inherited by the second stateful session bean and bound to it, and this rule recursively applies independently of whether <\/em><br>\n<em>transactions are active or not at the point of the creation of the stateful session beans. <\/em><br>\n<em>If the stateful session beans differ in declared synchronization type, the EJBException is thrown by the container. <\/em><br>\n<em>If the persistence context has been inherited by any stateful session beans, the container does not close the persistence context <\/em><br>\n<em>until all such stateful session beans have been removed or otherwise destroyed.<\/em><\/p>\n<p>from:&nbsp; <a href=\"https:\/\/github.com\/wildfly\/wildfly\/blob\/master\/docs\/src\/main\/asciidoc\/_developer-guide\/JPA_Reference_Guide.adoc\">github.com\/wildfly\/wildfly\/blob\/master\/docs\/src\/main\/asciidoc\/_developer-guide\/JPA_Reference_Guide.adoc<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%3ETIP_%E2%80%93_EXTRA_INFORMATION\"><\/span><strong>&gt;TIP &#8211; EXTRA INFORMATION<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>When commenting, avoid comment format like below \u2014 using initial and final comments for all lines:<\/p>\n<pre>&lt;!--&lt;subsystem xmlns=\"urn:jboss:domain:jpa:1.1\"&gt;\n  &lt;jpa default-datasource=\"\" default-extended-persistence-inheritance=\"DEEP\"\/&gt;\n  &lt;\/subsystem&gt;--&gt;\n<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%3EENV\"><\/span>&gt;ENV<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Windows 10<br>\nWildfly 18<br>\nJEE\/CDI\/JPA<\/p>\n<p>&nbsp;<\/p>\n<!--CusAds0-->\n<div style=\"font-size: 0px; height: 0px; line-height: 0px; margin: 0; padding: 0; clear: both;\"><\/div>","protected":false},"excerpt":{"rendered":"<p>&nbsp; &gt;PROBLEM Creating a persistence.xml file having two persistence units caused the following Wildfly&#8217;s error message: Caused by: java.lang.IllegalArgumentException: WFLYJPA0061: Persistence unitName was not specified and there are 2 persistence unit definitions in application deployment deployment &#8220;todos.war&#8221;. Either change the application deployment to have only one persistence unit definition or specify the unitName for each &#8230; <a href=\"https:\/\/ultering.com\/it4us\/?p=3367\" class=\"more-link\">Read More<span class=\"screen-reader-text\"> &#8220;WILDFLY\/JBOSS: WFLYJPA0061: Persistence unitName was not specified and double persistence unit definitions&#8221;<\/span> &raquo;<\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[12],"tags":[188,187,180,20,186,189,190,185],"class_list":["post-3367","post","type-post","status-publish","format-standard","hentry","category-java","tag-cdi","tag-double-database-sources","tag-jboss","tag-jpa","tag-multiple-persistent-unit","tag-qualifier","tag-server-configuration","tag-wildfly"],"_links":{"self":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts\/3367","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3367"}],"version-history":[{"count":6,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts\/3367\/revisions"}],"predecessor-version":[{"id":4153,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=\/wp\/v2\/posts\/3367\/revisions\/4153"}],"wp:attachment":[{"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3367"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3367"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ultering.com\/it4us\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3367"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}