Topic
IC4NOTICE: developerWorks Community will be offline May 29-30, 2015 while we upgrade to the latest version of IBM Connections. For more information, read our upgrade FAQ.
22 replies Latest Post - ‏2008-12-17T14:23:52Z by devjhumpa
SystemAdmin
SystemAdmin
1569 Posts
ACCEPTED ANSWER

Pinned topic <message id="EJPPF0181E">com.ibm.wps.pe.mgr.exceptions.DuplicateAppExceptio

‏2008-06-05T15:37:38Z |
i am using the following xml to deploy portles using xmlaccess, the fresh deployment works perfect but when i make changes and deploy again it throws exception

====== START EXCEPTION =====

<status element="web-app" result="failed">
<message id="EJPXA0043E">com.ibm.wps.command.xml.XmlCommandException: EJPXA0043E: An error occurred while creating or updating the resource. web-app</message>
<message id="EJPPF0181E">com.ibm.wps.command.applications.AppAlreadyExistsException: EJPPF0181E: Error occurred. The id=com.corp.portlet.LoginPortlet.feb5cea4a1 already exists for stored standard portlet application com.corp.portlet.LoginPortlet.feb5cea4a1 in the XML element portlet-app LoginPortlet.war.
WrappedException is: com.ibm.wps.pe.mgr.exceptions.DuplicateAppException: EJPPF0181E: Error occurred. The id=com.corp.portlet.LoginPortlet.feb5cea4a1 already exists for stored standard portlet application com.corp.portlet.LoginPortlet.feb5cea4a1 in the XML element portlet-app LoginPortlet.war.</message>
<message id="EJPPF0181E">com.ibm.wps.pe.mgr.exceptions.DuplicateAppException: EJPPF0181E: Error occurred. The id=com.corp.portlet.LoginPortlet.feb5cea4a1 already exists for stored standard portlet application com.corp.portlet.LoginPortlet.feb5cea4a1 in the XML element portlet-app LoginPortlet.war.</message>
</status>

===== END EXCEPITON ===

====== XML used =======<?xml version="1.0" encoding="UTF-8"?>

<request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="PortalConfig_1.4.xsd"
type="update">

<!-- Sample for deploying portlets ( JSR 168 Portlet) and creating a page with these portlets. -->
<portal action="locate">

<!-- Sample Standard Portlets -->
<!-- uid attribute must match the uid attribute of the tag portlet-app subelement with a .webmod suffix. -->
<web-app action="update" active="true" uid="LoginPortlet.war.webmod">
<url>file:///C:/LoginPortlet.war</url>
<!-- The referenceid attribute must match the portlet-name element from the portlet.xml appended
with the .servlet suffix. -->
<servlet action="update" active="true" objectid="myServlet" referenceid="LoginPortlet.servlet"/>
<!-- The uid attribute must match the id attribute of the portlet-app element from the portlet.xml.
If this value has not been specified, specify the WAR file name of the portlet application in its place.
For portlet updates, the WAR file name must be the original name of the WAR file used to install
the portlet application. That is, the WAR file name can be changed,
but the uid must indicate the original uid used during portlet installation. -->
<portlet-app action="update" active="true" uid="com.corp.portlet.loginportlet.LoginPortlet.e26c934c91">
<!-- The name attribute must match the portlet-name element from the portlet.xml. -->
<portlet action="update" active="true" objectid="theStandardPortlet" name="LoginPortlet"
servletref="myServlet"/>
</portlet-app>
</web-app>

</portal>
</request>
can any one tell...what's going wrong..with this....
Updated on 2008-12-17T14:23:52Z at 2008-12-17T14:23:52Z by devjhumpa
  • jwbarnes
    jwbarnes
    872 Posts
    ACCEPTED ANSWER

    Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

    ‏2008-06-05T16:12:08Z  in response to SystemAdmin
    try adding the create-oids="true" in the request line


    IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
    IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

    The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
    • SystemAdmin
      SystemAdmin
      1569 Posts
      ACCEPTED ANSWER

      Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

      ‏2008-06-05T16:30:19Z  in response to jwbarnes
      same exception is throwing while updating, i made the following changes as per your reply

      <request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="PortalConfig_1.4.xsd"
      type="update" create-oids="true">
      • jwbarnes
        jwbarnes
        872 Posts
        ACCEPTED ANSWER

        Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

        ‏2008-06-05T16:33:58Z  in response to SystemAdmin
        have you tried exporting the web app, and seeing what the differences are?


        IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
        IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

        The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
        • SystemAdmin
          SystemAdmin
          1569 Posts
          ACCEPTED ANSWER

          Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

          ‏2008-06-05T16:44:51Z  in response to jwbarnes
          sorry, but i didn't get what you are asking.

          exporting the web app, means ? using xmlaccess ?
          • jwbarnes
            jwbarnes
            872 Posts
            ACCEPTED ANSWER

            Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

            ‏2008-06-05T16:48:13Z  in response to SystemAdmin
            yes, easiest to just do a full export
            jim


            IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
            IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

            The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
            • SystemAdmin
              SystemAdmin
              1569 Posts
              ACCEPTED ANSWER

              Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

              ‏2008-06-05T18:51:26Z  in response to jwbarnes
              here is the result of the full export

              i m copying only part of my login portlet from resulting xml

              ========= starts ========

              <web-app action="update" active="true" domain="rel" objectid="1_77AFITS30090802BQC83HK3082" removable="true" uid="com.corp.loginportlet.LoginPortlet.e26c934c91.webmod">
              <url>file://localhost/$server_root$/deployed/archive/com.corp.loginportlet.LoginPortlet.e26c934c91.webmod/LoginPortlet.war</url>
              <access-control externalized="false" owner="undefined" private="false"/>
              <servlet action="update" active="true" cache-expiration="0" domain="rel" objectid="V_77AFITS30090802BQC83HK3081" referenceid="LoginPortlet.servlet" remote-cache-dynamic="false" remote-cache-scope-private="false"/>
              <portlet-app action="update" active="true" defaultlocale="en" domain="rel" name="com.corp.loginportlet.LoginPortlet.e26c934c91" objectid="2_77AFITS30090802BQC83HK3086" uid="com.corp.loginportlet.LoginPortlet.e26c934c91">
              <localedata locale="ar">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="ca">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="cs">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="da">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="de">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="el">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="en">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="es">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="fi">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="fr">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="hu">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="it">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="iw">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="ja">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="ko">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="nl">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="no">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="pl">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="pt">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="pt_BR">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="ro">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="ru">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="sk">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="sl">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="sv">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="th">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="tr">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="uk">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="zh">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <localedata locale="zh_TW">
              <title>com.corp.loginportlet.LoginPortlet.e26c934c91</title>
              </localedata>
              <access-control externalized="false" owner="undefined" private="false"/>
              <portlet action="update" active="true" defaultlocale="en" domain="rel" name="LoginPortlet" objectid="3_77AFITS30090802BQC83HK3085" provided="false" servletref="V_77AFITS30090802BQC83HK3081">
              <localedata locale="ar">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="ca">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="cs">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="da">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="de">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="el">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="en">
              <title>LoginPortlet</title>
              <keywords/>
              </localedata>
              <localedata locale="es">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="fi">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="fr">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="hu">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="it">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="iw">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="ja">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="ko">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="nl">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="no">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="pl">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="pt">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="pt_BR">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="ro">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="ru">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="sk">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="sl">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="sv">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="th">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="tr">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="uk">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="zh">
              <title>LoginPortlet</title>
              </localedata>
              <localedata locale="zh_TW">
              <title>LoginPortlet</title>
              </localedata>
              <access-control externalized="false" owner="undefined" private="false"/>
              </portlet>
              </portlet-app>
              </web-app>

              === end ====
              is that write...output....
            • SystemAdmin
              SystemAdmin
              1569 Posts
              ACCEPTED ANSWER

              Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

              ‏2008-06-05T18:52:29Z  in response to jwbarnes
              ohh you are asking to compare diff of export before update and after update, right ?
              • jwbarnes
                jwbarnes
                872 Posts
                ACCEPTED ANSWER

                Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                ‏2008-06-05T18:55:56Z  in response to SystemAdmin
                the problem is this in your import
                <portlet action="update" active="true" objectid="theStandardPortlet" name="LoginPortlet"

                needs top match
                <portlet action="update" active="true" defaultlocale="en" domain="rel" name="LoginPortlet" objectid="3_77AFITS30090802BQC83HK3085" provided="false" servletref="V_77AFITS30090802BQC83HK3081">

                IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
                IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

                The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
                • SystemAdmin
                  SystemAdmin
                  1569 Posts
                  ACCEPTED ANSWER

                  Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                  ‏2008-06-05T19:16:33Z  in response to jwbarnes
                  but how can i specify objectid and servletref value in advance, i mean while deploying. And how it will solve the duplicateAppException... while updating ?

                  may be i am not getting what you said ? could you please detailed a bit.

                  thanks again.....
                  • jwbarnes
                    jwbarnes
                    872 Posts
                    ACCEPTED ANSWER

                    Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                    ‏2008-06-05T19:18:51Z  in response to SystemAdmin
                    Well,

                    the object id you gave in the initial is fine, but after that you need to make sure it matches so that you tell portal what to correctly update


                    IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
                    IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

                    The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
                    • SystemAdmin
                      SystemAdmin
                      1569 Posts
                      ACCEPTED ANSWER

                      Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                      ‏2008-06-05T19:30:48Z  in response to jwbarnes
                      ya that's right...
                      but i m using the same xml for fresh deploy and also for updating, so it should take the same object id.

                      how the object id is changing automatically while updating ?
                      • jwbarnes
                        jwbarnes
                        872 Posts
                        ACCEPTED ANSWER

                        Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                        ‏2008-06-05T19:34:12Z  in response to SystemAdmin
                        because objectids have a specific form in portal, when you specify them like my servlet or standardportlet portal uses them as linkage only(like if you put the portlet on the page and referred to the portletref for the portlet insance to point to that fake objectid. Portal will create real object ids that match portals format.


                        IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
                        IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

                        The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
                        • SystemAdmin
                          SystemAdmin
                          1569 Posts
                          ACCEPTED ANSWER

                          Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                          ‏2008-06-05T19:39:16Z  in response to jwbarnes
                          ok got you...

                          so in my case, how can i make sure it should take the same object id for fresh deploy and update also ?
                        • SystemAdmin
                          SystemAdmin
                          1569 Posts
                          ACCEPTED ANSWER

                          Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                          ‏2008-06-05T20:19:06Z  in response to jwbarnes
                          and also that is what the whole idea for writing this xml is to get rid of the object id.

                          what we used to do before is, after deploying the portlet app manually we then export the id from portal and use that id into the build process.

                          we just wanted to get rid of this object id and also first time manual deployment of portlet app.

                          if this is the case that i need to have that object id defined manually in xml, then i am again back to square.. :-(
                        • SystemAdmin
                          SystemAdmin
                          1569 Posts
                          ACCEPTED ANSWER

                          Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                          ‏2008-06-06T14:50:23Z  in response to jwbarnes
                          what if i call delete and then update, everytime while updating. I know this won't be a good approach.
                          will this delete call, deletes all the access permissions for that portlet as well ?

                          could you please suggest me any solution...so that upadte can work....
                          • jwbarnes
                            jwbarnes
                            872 Posts
                            ACCEPTED ANSWER

                            Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                            ‏2008-06-06T14:54:31Z  in response to SystemAdmin
                            it deletes it and all instances of the page as well as any preferences associated with that


                            IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
                            IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

                            The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
                            • SystemAdmin
                              SystemAdmin
                              1569 Posts
                              ACCEPTED ANSWER

                              Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                              ‏2008-06-06T15:06:29Z  in response to jwbarnes
                              thanks....

                              so could you please suggest me any workaround so that i can update portlet app without manually copying object id into my xml ?
                              thanks again
                              • jwbarnes
                                jwbarnes
                                872 Posts
                                ACCEPTED ANSWER

                                Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                                ‏2008-06-06T17:49:33Z  in response to SystemAdmin
                                I am not sure, I would call in a PMR to talk with the xmlaccess team


                                IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
                                IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

                                The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
                                • SystemAdmin
                                  SystemAdmin
                                  1569 Posts
                                  ACCEPTED ANSWER

                                  Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                                  ‏2008-06-06T17:54:18Z  in response to jwbarnes
                                  that would be really great...

                                  Thanks a lot Jim......

                                  i will be waiting to hear from you.....

                                  thanks again....
                                  • jwbarnes
                                    jwbarnes
                                    872 Posts
                                    ACCEPTED ANSWER

                                    Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                                    ‏2008-06-06T17:55:39Z  in response to SystemAdmin
                                    I think you miss understand me, you need to call in a PMR


                                    IBM Certified System Administrator -- WebSphere Portal V6.0, V5.1, V5.0
                                    IBM Certified Solution Developer -- WebSphere Portal V5.1, v6.0

                                    The postings on this site are my own and do not necessarily represent the positions, strategies, or opinions of IBM
                                    • SystemAdmin
                                      SystemAdmin
                                      1569 Posts
                                      ACCEPTED ANSWER

                                      Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                                      ‏2008-06-06T17:59:46Z  in response to jwbarnes
                                      ohhh sorry it was my bad...

                                      thanks....i will update thread once i have something....
                                      • devjhumpa
                                        devjhumpa
                                        19 Posts
                                        ACCEPTED ANSWER

                                        Re: &lt;message id="EJPPF0181E"&gt;com.ibm.wps.pe.mgr.exceptions.DuplicateAppExce

                                        ‏2008-12-17T14:23:52Z  in response to SystemAdmin
                                        Hi ,

                                        Did you find an answer to your problem.... If yes can you please share it.
                                        I need a solution too.

                                        Thanks
                                        Jhumps