Topic
  • 34 replies
  • Latest Post - ‏2013-01-14T22:21:37Z by SystemAdmin
SystemAdmin
SystemAdmin
30895 Posts

Pinned topic Static page not created correctly if theme layout template is in EAR file?

‏2012-11-13T02:30:48Z |
I am trying to generate static pages in Portal 7.0.0.2 using layout templates that have been deployed with my other static theme resources in a theme EAR file. I am not permitted to have WebDAV access to the servers in our environment, so I have followed the instructions in the InfoCenter to deploy my custom theme (based on the 7.0.0.2 modular theme) with two WAR files in a single theme EAR file, one WAR for dynamic resources and one WAR for static resources.

However, every time I import my XMLAccess script, my pages are created with the correct layout (1Column, 2ColumnLeft, etc.) but with no portlets. (When I check the page layout via the Portal Admin pages, no portlet information is displayed for any of the pages.)

In the Portal V7 InfoCenter, the document titled Importing a static page from an installed template states that:
“You can import a static content page from an installed layout template by using the XML configuration interface.”

It provides an XMLAccess example (copied partially below) that contains a <content-node> with an empty <pagecontents> child node. The <content-node> also contains a <parameter> child node that specifies a ‘com.ibm.portal.layout.template.ref’ value pointing to WebDAV, i.e., ‘dav:fs-type1/layout-templates/2ColumnEqual’.


<content-node action=
"update" active=
"true" allportletsallowed=
"true" content-parentref=
"parentPage" create-type=
"explicit" domain=
"rel" ordinal=
"last" type=
"staticpage" uniquename=
"ibm.portal.ssa.SamplePage.2">   etc. etc.   <pagecontents markup=
"html" display-option=
"inline"/> etc. etc.   <parameter name=
"com.ibm.portal.friendly.name" type=
"string" update=
"set"> <! [CDATA [staticpage2]]> </parameter> <parameter name=
"com.ibm.portal.layout.template.ref" type=
"string" update=
"set"> <! [CDATA [dav:fs-type1/layout-templates/2ColumnEqual]]> </parameter>   etc. etc.   </content-node>


Does this technique work only for static pages that can point to layout templates stored in WebDAV?

My ‘com.ibm.portal.layout.template.ref’ parameter is set to the following:

<parameter name=
"com.ibm.portal.layout.template.ref" type=
"string" update=
"set"> <![CDATA[war:publicTheme7Static/themes/publicTheme7/layout-templates/2ColumnLeft/]]> </parameter>


Does anyone know if this will work with layout templates that are deployed via an EAR file instead of WebDAV?
Updated on 2013-01-14T22:21:37Z at 2013-01-14T22:21:37Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-15T15:27:43Z  
    Hi, this should work with dav: as well as with war:
    Do you see any errors in the logs ?

    I will try to recreate it locally here.

    One more question. Did you enable the war: scheme to fetch from your context root ? In contrast to dab:, the war: scheme cannot load anything by default and needs to be configured to specifically allow which static content is allowed. This link explains that: http://infolib.lotus.com/resources/portal/8.0.0/doc/en_us/PT800ACD002/dev/themeopt_move_repack_addstatic.html

    -Stephan
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-15T16:32:19Z  
    Hi, this should work with dav: as well as with war:
    Do you see any errors in the logs ?

    I will try to recreate it locally here.

    One more question. Did you enable the war: scheme to fetch from your context root ? In contrast to dab:, the war: scheme cannot load anything by default and needs to be configured to specifically allow which static content is allowed. This link explains that: http://infolib.lotus.com/resources/portal/8.0.0/doc/en_us/PT800ACD002/dev/themeopt_move_repack_addstatic.html

    -Stephan
    Hi, Stephan.

    I just ran my XMLAccess import again and got the same behaviour: the <content-node> that uses an empty <pagecontents> child node and a <parameter> child node specifying the ‘com.ibm.portal.layout.template.ref’ value gets created with the right layout but no portlets. (Other instances of <content-node> that include the serialized binary-format html get the right layout AND the portlets.)

    There were no errors in the log file. My XMLAccess script is running successfully to completion:
    
    EJPAG1008I: The XMLAccess ran successfully please click the View Details link to view the output. EJPAG1009I: Results from XMLAccess: <?xml version=
    "1.0" encoding=
    "UTF-8"?> <!-- IBM WebSphere Portal/7.0.0.2 build wp7002CF17_001_10 exported on Thu Nov 15 11:04:18 EST 2012 from OND2C00815489/10.20.9.84 -->   etc. etc. etc.   <!-- 32 [content-node Z6_000000000000000000000000A0 uniquename=wps.content.root] --> <!-- 33 [content-node Z6_PMRR0GSC0R74D0IBOP1D9O2027 uniquename=ibm.portal.Home] --> <!-- 34 [content-node Z6_PMRR0GSC032O70IBHN7FU51G04 uniquename=ca.on.gov.s2i.root.node] --> <!-- 35 [content-node Z6_PMRR0GSC0JU3D0IBABUBMB1003 uniquename=ca.on.gov.s2i.page.pb2] --> ***<<< 
    
    this is the page I
    'm trying to create with the empty pagecontents child node & the template reference*** <!-- 36 [component] --> <!-- 37 [component] --> <!-- 38 [component] --> <!-- 39 [component] --> <!-- 40 [component] --> <!-- 41 [portletinstance] -->   etc. etc. etc.   <request build=
    "wp7002CF17_001_10" type=
    "update" version=
    "7.0.0.2" xmlns:xsi=
    "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation=
    "PortalConfig_7.0.0_2.xsd"> <status element=
    "all" result=
    "ok"/> </request>
    


    Here's the html being generated for the main body of my page where the portlets should be:
    
    <div role=
    "main" class=
    "wpthemeLayoutContainers wpthemeLayoutContainersHidden" id=
    "layoutContainers"> <div class=
    "wpthemeInner"> <div class=
    "hiddenWidgetsDiv"> <!-- widgets in 
    
    this container are hidden in the UI by 
    
    default --> <div name=
    "ibmHiddenWidgets" class=
    "component-container ibmDndRow hiddenWidgetsContainer id-Z7_PMRR0GSC0BV9F0IR0P4V5200G6"></div> <div style=
    "clear:both"></div> </div> <!-- 
    
    this layout has one main fluid container --> <div name=
    "ibmMainContainer" class=
    "component-container wpthemeCol wpthemeCol-1 wpthemeLeft pubTheme7Debug  ibmDndColumn id-Z7_PMRR0GSC0BV9F0IR0P4V5200G1
    "></div> <div class=
    "wpthemeClear"></div> </div> </div>
    


    I followed the 7.0.0.2 version of those instructions when I created the WAR file for my static resources. I'm pretty sure I have followed the steps correctly.

    Here's the web.xml for my static resources WAR file:
    
    <?xml version=
    "1.0" encoding=
    "UTF-8"?> <web-app id=
    "publicTheme7Static" version=
    "2.4" xmlns=
    "http://java.sun.com/xml/ns/j2ee" xmlns:xsi=
    "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=
    "http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>PublicTheme7Static</display-name> <context-param> <description>A regular expression that defines which of the resources in the war file can be served by the portal war datasource.</description> <param-name>com.ibm.portal.whitelist</param-name> <param-value>.*</param-value> </context-param> <context-param> <description>A regular expression that defines which of the resources in the war file cannot be served by the portal war datasource.</description> <param-name>com.ibm.portal.blacklist</param-name> <param-value>WEB-INF/.*</param-value> </context-param> </web-app>
    


    Here's a snippet from the bootstrap.jspf from my dynamic resources WAR file:
    
    ContextAccessor contextAccessor = pocSvc.getContextAccessor(); com.ibm.portal.resolver.ServletContext context = pocSvc.getContext(); URI davURI = pocSvc.createURI(
    "war",
    "publicTheme7Static/common-resources/ibm/css/common.css"); DataSource davDataSource = dataSourceFactory.newSource(davURI, 
    "download", Collections.EMPTY_MAP, context); String digest = contextAccessor.getDigest(davDataSource);
    


    Please let me know if I can provide any other information to assist with troubleshooting this problem.

    Thanks,
    Doug
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-15T19:17:46Z  
    Hi, Stephan.

    I just ran my XMLAccess import again and got the same behaviour: the <content-node> that uses an empty <pagecontents> child node and a <parameter> child node specifying the ‘com.ibm.portal.layout.template.ref’ value gets created with the right layout but no portlets. (Other instances of <content-node> that include the serialized binary-format html get the right layout AND the portlets.)

    There were no errors in the log file. My XMLAccess script is running successfully to completion:
    <pre class="jive-pre"> EJPAG1008I: The XMLAccess ran successfully please click the View Details link to view the output. EJPAG1009I: Results from XMLAccess: <?xml version= "1.0" encoding= "UTF-8"?> <!-- IBM WebSphere Portal/7.0.0.2 build wp7002CF17_001_10 exported on Thu Nov 15 11:04:18 EST 2012 from OND2C00815489/10.20.9.84 --> etc. etc. etc. <!-- 32 [content-node Z6_000000000000000000000000A0 uniquename=wps.content.root] --> <!-- 33 [content-node Z6_PMRR0GSC0R74D0IBOP1D9O2027 uniquename=ibm.portal.Home] --> <!-- 34 [content-node Z6_PMRR0GSC032O70IBHN7FU51G04 uniquename=ca.on.gov.s2i.root.node] --> <!-- 35 [content-node Z6_PMRR0GSC0JU3D0IBABUBMB1003 uniquename=ca.on.gov.s2i.page.pb2] --> ***<<< this is the page I 'm trying to create with the empty pagecontents child node & the template reference*** <!-- 36 [component] --> <!-- 37 [component] --> <!-- 38 [component] --> <!-- 39 [component] --> <!-- 40 [component] --> <!-- 41 [portletinstance] --> etc. etc. etc. <request build= "wp7002CF17_001_10" type= "update" version= "7.0.0.2" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "PortalConfig_7.0.0_2.xsd"> <status element= "all" result= "ok"/> </request> </pre>

    Here's the html being generated for the main body of my page where the portlets should be:
    <pre class="jive-pre"> <div role= "main" class= "wpthemeLayoutContainers wpthemeLayoutContainersHidden" id= "layoutContainers"> <div class= "wpthemeInner"> <div class= "hiddenWidgetsDiv"> <!-- widgets in this container are hidden in the UI by default --> <div name= "ibmHiddenWidgets" class= "component-container ibmDndRow hiddenWidgetsContainer id-Z7_PMRR0GSC0BV9F0IR0P4V5200G6"></div> <div style= "clear:both"></div> </div> <!-- this layout has one main fluid container --> <div name= "ibmMainContainer" class= "component-container wpthemeCol wpthemeCol-1 wpthemeLeft pubTheme7Debug ibmDndColumn id-Z7_PMRR0GSC0BV9F0IR0P4V5200G1 "></div> <div class= "wpthemeClear"></div> </div> </div> </pre>

    I followed the 7.0.0.2 version of those instructions when I created the WAR file for my static resources. I'm pretty sure I have followed the steps correctly.

    Here's the web.xml for my static resources WAR file:
    <pre class="jive-pre"> <?xml version= "1.0" encoding= "UTF-8"?> <web-app id= "publicTheme7Static" version= "2.4" xmlns= "http://java.sun.com/xml/ns/j2ee" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>PublicTheme7Static</display-name> <context-param> <description>A regular expression that defines which of the resources in the war file can be served by the portal war datasource.</description> <param-name>com.ibm.portal.whitelist</param-name> <param-value>.*</param-value> </context-param> <context-param> <description>A regular expression that defines which of the resources in the war file cannot be served by the portal war datasource.</description> <param-name>com.ibm.portal.blacklist</param-name> <param-value>WEB-INF/.*</param-value> </context-param> </web-app> </pre>

    Here's a snippet from the bootstrap.jspf from my dynamic resources WAR file: <pre class="jive-pre"> ContextAccessor contextAccessor = pocSvc.getContextAccessor(); com.ibm.portal.resolver.ServletContext context = pocSvc.getContext(); URI davURI = pocSvc.createURI( "war", "publicTheme7Static/common-resources/ibm/css/common.css"); DataSource davDataSource = dataSourceFactory.newSource(davURI, "download", Collections.EMPTY_MAP, context); String digest = contextAccessor.getDigest(davDataSource); </pre>

    Please let me know if I can provide any other information to assist with troubleshooting this problem.

    Thanks,
    Doug
    Doug, I need to double check something within the dev team. In the meantime can you try the following please.
    1) create page with war layout ref and no portlets on the page
    2) call the refresh-page-layout task as documented here: http://infolib.lotus.com/resources/portal/8.0.0/doc/en_us/PT800ACD001/dev/csa2r_cfgtsk_rfrshpglyt.html
    3) use xmlaccess to add portlets

    Thank you
    -Stephan
  • Dennis_te_Lintelo
    Dennis_te_Lintelo
    77 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-15T20:32:00Z  
    Doug, I need to double check something within the dev team. In the meantime can you try the following please.
    1) create page with war layout ref and no portlets on the page
    2) call the refresh-page-layout task as documented here: http://infolib.lotus.com/resources/portal/8.0.0/doc/en_us/PT800ACD001/dev/csa2r_cfgtsk_rfrshpglyt.html
    3) use xmlaccess to add portlets

    Thank you
    -Stephan
    Last week we had to create a Portal 8 demo including a theme.

    One thing I noticed was that the parameters below are a must for correctly applying a layout template to a page.

    <parameter name="com.ibm.portal.layout.template.file.name.html" type="string" update="set"><![CDATAhttp://layout.html]></parameter>
    <parameter name="com.ibm.portal.layout.template.ref" type="string" update="set"><![CDATAwar:<context root to your war>/themes/html/<static content>/layout-templates/<template name>/]></parameter>
    <parameter name="com.ibm.portal.static.page.file.name.html" type="string" update="set"><![CDATAhttp://layout.html]></parameter>

    For this demo, both static and dynamic files were in a single war file.

    We these parameters set, importing pages with portlets worked fine.

    Best regards,
    Dennis
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-15T21:07:12Z  
    Doug, I need to double check something within the dev team. In the meantime can you try the following please.
    1) create page with war layout ref and no portlets on the page
    2) call the refresh-page-layout task as documented here: http://infolib.lotus.com/resources/portal/8.0.0/doc/en_us/PT800ACD001/dev/csa2r_cfgtsk_rfrshpglyt.html
    3) use xmlaccess to add portlets

    Thank you
    -Stephan
    Running the test you requested now...

    This refresh-page-layout-template task sets all pages to the same layout?

    Is there any way to specify one or more individual pages that should use a particular layout?
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-15T21:32:10Z  
    Running the test you requested now...

    This refresh-page-layout-template task sets all pages to the same layout?

    Is there any way to specify one or more individual pages that should use a particular layout?
    Stephane,

    I created my page with the war: layout reference and no portlets, as requested. However, when I run ConfigEngine, the Build Fails with:
    
    [wsadmin] [11/15/12 16:25:23.752 EST] EJPXD0001I [wsadmin] java.lang.NullPointerException: 
    
    null Target finished: refresh-page-layout-template
    


    I've attached the relevant entries from the ConfigTrace.log for your review.

    Regards,
    d
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-16T14:26:16Z  
    Stephane,

    I created my page with the war: layout reference and no portlets, as requested. However, when I run ConfigEngine, the Build Fails with:
    <pre class="jive-pre"> [wsadmin] [11/15/12 16:25:23.752 EST] EJPXD0001I [wsadmin] java.lang.NullPointerException: null Target finished: refresh-page-layout-template </pre>

    I've attached the relevant entries from the ConfigTrace.log for your review.

    Regards,
    d
    And here's the XMLAccess script that I used to create the page with the war layout ref and no portlets.
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-27T17:57:41Z  
    And here's the XMLAccess script that I used to create the page with the war layout ref and no portlets.
    After trying this myself here in the lab I think you stumbled across a bug. So I have to ask you to open a PMR. Please let me know the number so I can push this into the right channels.

    Here is what is going wrong and some explanation:
    • Your original post that you made should work. All my questions and things I asked you to do were about trying to narrow down the problem.
    • The wiki content from the link in your original post has a few little errors. I will take care of those. I attached a new file that I used for testing that you can use instead as a test on how things should be working.
    • It is important to know that when you use the static pages and create a page the way you did, that the system is actively loading the layout template, parsing the HTML and setting container metadata. This works the first time, but if you try to rerun the xml script again you would break the page layout. Because of this my attached xml snippet contains already the necessary metadata 'css-classes'. This way you can rerun the xml snippet multiple times.

    How to test this and reproduce the problem:
    1) use my xml-access snippet to create your page "and add the portlet"
    2) look at the page in portal and notice that the portlet has not been added
    3) rerun the same script again
    4) look at the page in portal and now you have the final page that you wanted.

    This also provides you with a workaround. SImply execute the xmlaccess snippet twice. It should work in the first pass however.

    I only tested this with WebDAV and I would like to ask you to verify the behavior described above also for WAR files. I suspect as much.

    Thank you
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-28T15:29:33Z  
    After trying this myself here in the lab I think you stumbled across a bug. So I have to ask you to open a PMR. Please let me know the number so I can push this into the right channels.

    Here is what is going wrong and some explanation:
    • Your original post that you made should work. All my questions and things I asked you to do were about trying to narrow down the problem.
    • The wiki content from the link in your original post has a few little errors. I will take care of those. I attached a new file that I used for testing that you can use instead as a test on how things should be working.
    • It is important to know that when you use the static pages and create a page the way you did, that the system is actively loading the layout template, parsing the HTML and setting container metadata. This works the first time, but if you try to rerun the xml script again you would break the page layout. Because of this my attached xml snippet contains already the necessary metadata 'css-classes'. This way you can rerun the xml snippet multiple times.

    How to test this and reproduce the problem:
    1) use my xml-access snippet to create your page "and add the portlet"
    2) look at the page in portal and notice that the portlet has not been added
    3) rerun the same script again
    4) look at the page in portal and now you have the final page that you wanted.

    This also provides you with a workaround. SImply execute the xmlaccess snippet twice. It should work in the first pass however.

    I only tested this with WebDAV and I would like to ask you to verify the behavior described above also for WAR files. I suspect as much.

    Thank you
    Hi, Stephan.

    Thank you for your efforts in trying to get to the bottom of this issue.

    I have followed the steps in your post to recreate the problem, and I have attached a PDF documenting the results of the various steps. While the portlet placement seems to get created as you described after the second XML import, unfortunately the page still doesn't render. There is definitely something not right with how the layout template is being referenced for the page.

    I have also included the XML export of the generated page.

    I will open a PMR as per your recommendation and will forward the PMR # to you once I have it.

    Regards,
    Doug
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-28T18:27:41Z  
    Hi, Stephan.

    Thank you for your efforts in trying to get to the bottom of this issue.

    I have followed the steps in your post to recreate the problem, and I have attached a PDF documenting the results of the various steps. While the portlet placement seems to get created as you described after the second XML import, unfortunately the page still doesn't render. There is definitely something not right with how the layout template is being referenced for the page.

    I have also included the XML export of the generated page.

    I will open a PMR as per your recommendation and will forward the PMR # to you once I have it.

    Regards,
    Doug
    Hi Doug,

    thanks for the detailed PDF. It helped a lot to see the various steps. It also showed me that I had one error in my xml as it was not pointing to the right layout template. This is why you saw the different css classes. I attached a new version of my xml as well as a war file that I used for reference the template from a WAR file. Please note that I did not move the whole theme into a WAR file yet, but just the layout templates.

    I get inconsistent results on my server now after I made that change. The result is now that the creation of the page including the portlets works in one step. This is different from the WebDAV reference.

    We need to take a closer look at your system and see why you get the 404. It looks to me like the wrong theme is selected. What is your default theme ? And what does the Page Properties Portlet say ? From the xml export that you attached it looks like the page is set to "csa2.theme" this theme. This would be the page builder 2 theme and that again would fit to the error message you see. Please try to explicitly set your page to your theme.

    Thanks
    Stephan
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-11-28T18:28:02Z  
    Hi Doug,

    thanks for the detailed PDF. It helped a lot to see the various steps. It also showed me that I had one error in my xml as it was not pointing to the right layout template. This is why you saw the different css classes. I attached a new version of my xml as well as a war file that I used for reference the template from a WAR file. Please note that I did not move the whole theme into a WAR file yet, but just the layout templates.

    I get inconsistent results on my server now after I made that change. The result is now that the creation of the page including the portlets works in one step. This is different from the WebDAV reference.

    We need to take a closer look at your system and see why you get the 404. It looks to me like the wrong theme is selected. What is your default theme ? And what does the Page Properties Portlet say ? From the xml export that you attached it looks like the page is set to "csa2.theme" this theme. This would be the page builder 2 theme and that again would fit to the error message you see. Please try to explicitly set your page to your theme.

    Thanks
    Stephan
    And here is the WAR file
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-04T23:24:00Z  
    And here is the WAR file
    Hi, Stephan.

    Sorry for the delay in replying. Got pulled away by some other issues.

    I have used a version of your v3 XMLAccess file to re-run the test. In the updated file (which is attached), I have inserted another label and explicitly assigned my custom theme to that label. The 'staticpage2' page is then added as a child of this label.

    Unfortunately the results are the same:
    - first pass of the XMLAccess file creates the page but no portlet info
    - second pass updates the page by (apparently) adding the portlet info
    - attempting to render the page fails with an error: "Error 404: There is no content available."

    The first time I ran this test (a few days ago) my default portal theme was set to PageBuilder. I also ran the test today with my default portal theme set to my custom theme, but it made no difference.

    I have attached the various steps I followed in a PDF.

    Opening the PMR has proven to be something of a challenge. I hope to get it opened tomorrow.

    Regards,
    Doug
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-05T08:14:11Z  
    Hi, Stephan.

    Sorry for the delay in replying. Got pulled away by some other issues.

    I have used a version of your v3 XMLAccess file to re-run the test. In the updated file (which is attached), I have inserted another label and explicitly assigned my custom theme to that label. The 'staticpage2' page is then added as a child of this label.

    Unfortunately the results are the same:
    - first pass of the XMLAccess file creates the page but no portlet info
    - second pass updates the page by (apparently) adding the portlet info
    - attempting to render the page fails with an error: "Error 404: There is no content available."

    The first time I ran this test (a few days ago) my default portal theme was set to PageBuilder. I also ran the test today with my default portal theme set to my custom theme, but it made no difference.

    I have attached the various steps I followed in a PDF.

    Opening the PMR has proven to be something of a challenge. I hope to get it opened tomorrow.

    Regards,
    Doug
    Please provide an xml export of your page after creation.
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-05T16:35:31Z  
    Please provide an xml export of your page after creation.
    XML export file attached, as requested.
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-05T18:56:48Z  
    XML export file attached, as requested.
    Sev 3 PMR opened.

    PMR #65669,999,649
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-05T21:05:03Z  
    Sev 3 PMR opened.

    PMR #65669,999,649
    A few more things for me to make progress.

    Please provide:
    1) an xml access export from your theme
    2) turn on tracing for com.ibm.engine.Servlet=all, then reproduce the 404, then send me the traces.log and Systemout/err

    Thank you
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-05T21:07:24Z  
    A few more things for me to make progress.

    Please provide:
    1) an xml access export from your theme
    2) turn on tracing for com.ibm.engine.Servlet=all, then reproduce the 404, then send me the traces.log and Systemout/err

    Thank you
    Please also provide your profiles folder "war:publicTheme7Static/themes/publicTheme7/profiles/"
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-06T14:28:52Z  
    Please also provide your profiles folder "war:publicTheme7Static/themes/publicTheme7/profiles/"
    Files are attached.

    Thanks,
    d
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-06T15:10:53Z  
    Files are attached.

    Thanks,
    d
    Looks like your profile is incorrect as indicated by this line

    06/12/12 9:11:14:713 EST 00000039 ProfileListIm W com.ibm.wps.resourceaggregator.profile.ProfileListImpl loadModelContent(context) EJPNK0010E: An error occurred during processing com.ibm.wps.resourceaggregator.profile.ProfileListModelException: EJPNK0002E: An exception occurred when parsing the profile war:publicTheme7Static/themes/publicTheme7/profiles/nls/. Invalid syntax. .

    You can turn on traces for om.ibm.wps.resourceaggregator.profile.*=all

    or attach your profile folder here.

    You should also check your profiles to be valid JSON for instance here: http://jsonlint.com

    -Stephan
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-06T16:41:26Z  
    Looks like your profile is incorrect as indicated by this line

    06/12/12 9:11:14:713 EST 00000039 ProfileListIm W com.ibm.wps.resourceaggregator.profile.ProfileListImpl loadModelContent(context) EJPNK0010E: An error occurred during processing com.ibm.wps.resourceaggregator.profile.ProfileListModelException: EJPNK0002E: An exception occurred when parsing the profile war:publicTheme7Static/themes/publicTheme7/profiles/nls/. Invalid syntax. .

    You can turn on traces for om.ibm.wps.resourceaggregator.profile.*=all

    or attach your profile folder here.

    You should also check your profiles to be valid JSON for instance here: http://jsonlint.com

    -Stephan
    My profile folder is included inside the ZIP file from my previous post.

    I will turn on traces for com.ibm.wps.resourceaggregator.profile.*=all and attach the results shortly.
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-06T17:10:47Z  
    My profile folder is included inside the ZIP file from my previous post.

    I will turn on traces for com.ibm.wps.resourceaggregator.profile.*=all and attach the results shortly.
    Extracts of my trace.log and SystemOut.log with com.ibm.wps.resourceaggregator.profile.*=all are attached.

    http://jsonlint.com indicates that the contents of my profile_lightweight.json file and my theme.json file are valid JSON.

    With regard to that "Invalid syntax. ." message in the log, I am seeing that written out to the log repeatedly, even on pages that render okay. The workaround I've been using up till now to avoid this 404 problem has been to manually copy the serialized html into the <content> nodes in my XMLaccess file. When I do that, the page renders okay but I still see that error in the log:

    
    [06/12/12 12:00:19:431 EST] 0000003b ProfileListIm W com.ibm.wps.resourceaggregator.profile.ProfileListImpl loadModelContent(context) EJPNK0010E: An error occurred during processing com.ibm.wps.resourceaggregator.profile.ProfileListModelException: EJPNK0002E: An exception occurred when parsing the profile war:publicTheme7Static/themes/publicTheme7/profiles/nls/. Invalid syntax. .
    
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-06T19:34:55Z  
    Extracts of my trace.log and SystemOut.log with com.ibm.wps.resourceaggregator.profile.*=all are attached.

    http://jsonlint.com indicates that the contents of my profile_lightweight.json file and my theme.json file are valid JSON.

    With regard to that "Invalid syntax. ." message in the log, I am seeing that written out to the log repeatedly, even on pages that render okay. The workaround I've been using up till now to avoid this 404 problem has been to manually copy the serialized html into the <content> nodes in my XMLaccess file. When I do that, the page renders okay but I still see that error in the log:

    <pre class="jive-pre"> [06/12/12 12:00:19:431 EST] 0000003b ProfileListIm W com.ibm.wps.resourceaggregator.profile.ProfileListImpl loadModelContent(context) EJPNK0010E: An error occurred during processing com.ibm.wps.resourceaggregator.profile.ProfileListModelException: EJPNK0002E: An exception occurred when parsing the profile war:publicTheme7Static/themes/publicTheme7/profiles/nls/. Invalid syntax. . </pre>
    Please remove the nls folder from your profiles directory, restart the server and try again. If that doesn't work, please take the trace again. Thanks
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-06T22:02:11Z  
    Please remove the nls folder from your profiles directory, restart the server and try again. If that doesn't work, please take the trace again. Thanks
    Removed the nls folder from the profiles directory, as instructed. This has eliminated the "Invalid syntax. ." message in the log but page still does not render correctly.

    "URL parsing problem" exception still being thrown.

    Log files are attached.

    Thanks,
    d
  • SystemAdmin
    SystemAdmin
    30895 Posts

    Re: Static page not created correctly if theme layout template is in EAR file?

    ‏2012-12-07T11:51:14Z  
    Removed the nls folder from the profiles directory, as instructed. This has eliminated the "Invalid syntax. ." message in the log but page still does not render correctly.

    "URL parsing problem" exception still being thrown.

    Log files are attached.

    Thanks,
    d
    At least we got rid of the false alarm. Please remove the profile trace string and add this instead: com.ibm.wps.logging.ExceptionLogger.*=all

    Thanks
    Stephan