<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Head in the Web &#187; WebLogic Portal</title>
	<atom:link href="http://techblog.fywservices.com/category/programming/weblogic-portal/feed/" rel="self" type="application/rss+xml" />
	<link>http://techblog.fywservices.com</link>
	<description>Building a better user experience one technology at a time</description>
	<lastBuildDate>Tue, 03 Jan 2012 18:12:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Excellent WLS LDAP Tuning Post</title>
		<link>http://techblog.fywservices.com/2011/08/excellent-wls-ldap-tuning-post/</link>
		<comments>http://techblog.fywservices.com/2011/08/excellent-wls-ldap-tuning-post/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 13:49:42 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[Must Have Bookmarks]]></category>
		<category><![CDATA[WebLogic Portal]]></category>
		<category><![CDATA[WebLogic Server]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=658</guid>
		<description><![CDATA[http://fusionsecurity.blogspot.com/2011/08/tuning-weblogic-ldap-authentication.html]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p><a href="http://fusionsecurity.blogspot.com/2011/08/tuning-weblogic-ldap-authentication.html" target="_blank">http://fusionsecurity.blogspot.com/2011/08/tuning-weblogic-ldap-authentication.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/08/excellent-wls-ldap-tuning-post/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Programmatically Managing WLP Enterprise Scope Roles</title>
		<link>http://techblog.fywservices.com/2011/08/programmatically-managing-wlp-enterprise-scope-roles/</link>
		<comments>http://techblog.fywservices.com/2011/08/programmatically-managing-wlp-enterprise-scope-roles/#comments</comments>
		<pubDate>Mon, 15 Aug 2011 12:13:46 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=655</guid>
		<description><![CDATA[Recently I was working on code to manage roles in WLP. WLP roles can be at the global, enterprise application, or web application scope and I needed it at the enterprise application scope because these roles were for use with the content repository.  However, I could only find examples for the web application scope, which [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>Recently I was working on code to manage roles in WLP. WLP roles can be at the global, enterprise application, or web application scope and I needed it at the enterprise application scope because these roles were for use with the content repository.  However, I could only find examples for the web application scope, which generally looked like this:</p>
<pre class="brush:java">RolePolicyManager rpm = new RolePolicyManager();
RolePolicyItem rpi = new RolePolicyItem();
rpi.setEntAppName("testTT");
rpi.setWebAppName("ProducerWEB");
rpi.setResourceScope(
   EntitlementConstants.WEBAPP_ROLE_INHERITANCE);
rpi.setPolicyName("myTestPolicy");
ArrayList a = new ArrayList();
a.add("testUser");
rpi.setUserList(a);
rpm.createRolePolicy(rpi);</pre>
<p>From that example, I would assume that changing</p>
<pre class="brush:java">rpi.setResourceScope(
   EntitlementConstants.WEBAPP_ROLE_INHERITANCE);</pre>
<p>to</p>
<pre class="brush:java">rpi.setResourceScope(
   EntitlementConstants.ENT_APP_ROLE_INHERITANCE);</pre>
<p>would be sufficient. Alas, it wasn&#8217;t. The role was still created at the web application level. So, being clever, I removed</p>
<pre class="brush:java">rpi.setWebAppName("ProducerWEB");</pre>
<p>which had an interesting result. The role was created at the Enterprise Application scope, but only in the RDBMS, not in LDAP and, consequently, not in the Portal Admin Console. For someone in a hurry this might be acceptable as the role could be managed from code. And, while in a hurry, I had the long view that these roles would also need to be managed from Portal Admin Console, so don&#8217;t ask me if the role actually worked for entitling when out of sync as I never tested it.</p>
<p>To make a long story short (probably too late for some), I contacted support, who in turn opened a bug. The response from engineering was that the WebAppName had to remain, and that one more piece was required:</p>
<pre class="brush:java">rpi.setPolicyUser(
   EntitlementConstants.P13N_APPLICATION_POLICY);</pre>
<p>And that did the trick. I looked up the documentation for com.bea.p13n.entitlements.policy.RolePolicyItem and found the setPolicyUser method listed in the parent class, though found no reference as to its value, nor did I find a getter for the attribute, so I don&#8217;t believe it was something I missed, just one of those undocumented features that are handy to know about.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/08/programmatically-managing-wlp-enterprise-scope-roles/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using the XIP Tool with WLP 10.3.2</title>
		<link>http://techblog.fywservices.com/2011/07/using-the-xip-tool-with-wlp-10-3-2/</link>
		<comments>http://techblog.fywservices.com/2011/07/using-the-xip-tool-with-wlp-10-3-2/#comments</comments>
		<pubDate>Tue, 19 Jul 2011 15:40:59 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=641</guid>
		<description><![CDATA[The 10.3.2 release of WebLogic Portal included changes to the file structure of the installation and packaging of the libraries. One impact to this is the need to manually update some of the legacy tools that are still included with the install but have not been updated for you. In this case, the XIP tool. [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>The 10.3.2 release of WebLogic Portal included changes to the file structure of the installation and packaging of the libraries. One impact to this is the need to manually update some of the legacy tools that are still included with the install but have not been updated for you. In this case, the XIP tool.</p>
<p>There is a support document that describes changes necessary to get the XIP tool working with 10.3.2, but it is not complete. Rather than making this entry longer and more confusing, I will ignore that article and simply list what I did to get it working.</p>
<p>The zip tools are located at [BEA_HOME]\wlportal_10.3\propagation\bin\xip. This is where the tool is run from and where the changes to make it work are done. All of changes are to the build.xml file. It starts with replacing the first block of two property declarations with a set of 5. For simplicity&#8217;s sake I hard-code the key definition though it is better to set this in a property file or pass it as an argument. The orginal block is:</p>
<pre class="brush:xml">&lt;property name="wlserver.dir" value="@WL_HOME" /&gt;
&lt;property name="wlportal.dir" value="@WLPORTAL_HOME" /&gt;</pre>
<p>And the new block is:</p>
<pre class="brush:xml">&lt;property name="bea.dir"
          value="C:\bea1032" /&gt;
&lt;property name="wlserver.dir"
          value="${bea.dir}\wlserver_10.3" /&gt;
&lt;property name="wlportal.dir"
          value="${bea.dir}\wlportal_10.3" /&gt;
&lt;property name="workshop.dir"
          value="${bea.dir}\wlportal_10.3\workshop"/&gt;
&lt;property name="modules.dir"
          value="${bea.dir}\modules\com.bea.p13n_10.3.2.0"/&gt;</pre>
<p>Next, under</p>
<pre class="brush:xml">&lt;!-- Library locations, should not need to modify --&gt;</pre>
<p>We will make some major modifications. So much so that I will simply list the completed updates:</p>
<pre class="brush:xml">&lt;property name="wls.classpath"
          value="${wlserver.dir}/server/lib/wlclient.jar"/&gt;
&lt;property name="wlp.classpath"
          value="${wlportal.dir}/light-portal/lib/system/
netuix_system.jar;${wlportal.dir}/p13n/lib/system/
p13n_system.jar"/&gt;
&lt;property name="wlp-library-dir"
          value="${wlportal.dir}/portal/lib/j2ee-modules"/&gt;
&lt;property name="p13n-library-dir"
          value="${wlportal.dir}/p13n/lib/j2ee-modules"/&gt;
&lt;property name="common-library-dir"
          value="${workshop.dir}/common/deployable-libraries"/&gt;
&lt;property name="modules-library-dir"
          value="${modules.dir}"/&gt;
&lt;property name="netuix-lib-app"
          value="${wlportal.dir}/propagation/bin/xip/applib"/&gt;

&lt;target name="init.app.libs"&gt;
  &lt;libclasspath basedir="${netuix-lib-app}"
                 tmpdir="${templibdir}"
                  classpathproperty="libraries.classpath"&gt;
    &lt;librarydir dir="${wlp-library-dir}"/&gt;
    &lt;librarydir dir="${p13n-library-dir}"/&gt;
    &lt;librarydir dir="${common-library-dir}"/&gt;
    &lt;librarydir dir="${modules-library-dir}"/&gt;
  &lt;/libclasspath&gt;
&lt;/target&gt;</pre>
<p>If you have used the XIP tool before, once you have made the changes above, run the setDomainEnv script from a working WLP domain, then CD to the XIP path. From there, edit the xip.properties file to your needs and then run ant. The properties file is mostly self-explanatory, except that terms Import and Export are from the perspective of the database rather than where the script is being executed from. This means that if you want to get a .portal file from a running portal you would set the following in the xip.properties:</p>
<pre class="brush:xml">xip.command=export</pre>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/07/using-the-xip-tool-with-wlp-10-3-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Propagation Scope Example</title>
		<link>http://techblog.fywservices.com/2011/06/propagation-scope-example/</link>
		<comments>http://techblog.fywservices.com/2011/06/propagation-scope-example/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 14:53:39 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=637</guid>
		<description><![CDATA[Following my previous post on propagation, I found that the depth of the parent tree was hard to follow for many (myself included). This example helps illustrate it more clearly: The importance of following the node tree up to remove an item from scope is best illustrated with an example. The BO InfoView iFrame portlet [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>Following my <a title="Scoped Propagation Notes" href="http://techblog.fywservices.com/2011/06/scoped-propagation-notes/">previous post on propagation</a>, I found that the depth of the parent tree was hard to follow for many (myself included). This example helps illustrate it more clearly:</p>
<p>The importance of following the node tree up to remove an item from scope is best illustrated with an example. The <em>BO InfoView iFrame</em> portlet contains an environment-specific URL that should not be propagated. This portlet is listed in a scope file<a href="#_ftn1">[1]</a> as:</p>
<p>scope_1492=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop\:default_portal_book_main.MainBook\:default_portal_book_reports.BookMember\:default_portal_book_reports.Book\:default_portal_page_boReports1.BookMember\:default_portal_page_boReports1.Page\:boInfoViewIframe_1.PageMember\:boInfoViewIframe_1.PortletInst</p>
<p>To remove this item from scope, all of the following parent nodes must be also be removed:</p>
<p>scope_1487=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop\:default_portal_book_main.MainBook\:default_portal_book_reports.BookMember</p>
<p>scope_1488=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop\:default_portal_book_main.MainBook\:default_portal_book_reports.BookMember\:default_portal_book_reports.Book</p>
<p>scope_1489=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop\:default_portal_book_main.MainBook\:default_portal_book_reports.BookMember\:default_portal_book_reports.Book\:default_portal_page_boReports1.BookMember</p>
<p>scope_1490=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop\:default_portal_book_main.MainBook\:default_portal_book_reports.BookMember\:default_portal_book_reports.Book\:default_portal_page_boReports1.BookMember\:default_portal_page_boReports1.Page</p>
<p>scope_1491=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop\:default_portal_book_main.MainBook\:default_portal_book_reports.BookMember\:default_portal_book_reports.Book\:default_portal_page_boReports1.BookMember\:default_portal_page_boReports1.Page\:boInfoViewIframe_1.PageMember</p>
<p>While the above list contains the immediate parent nodes, the parents of those nodes must also be removed to prevent propagating the portlet, so the following also must be removed:</p>
<p>scope_0=Application</p>
<p>scope_139=Application\:portalservices</p>
<p>scope_140=Application\:portalservices\:f1portal.WebApp</p>
<p>scope_1321=Application\:portalservices\:f1portal.WebApp\:f1.Portal</p>
<p>scope_1322=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop</p>
<p>scope_1323=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop</p>
<p>scope_1324=Application\:portalservices\:f1portal.WebApp\:f1.Portal\:default.Desktop\:default.DefaultDesktop\:default_portal_book_main.MainBook</p>
<p>In addition, any child nodes should be removed to prevent possible errors:</p>
<p>scope_1241=Application\:portalservices\:f1portal.WebApp\:f1portal.Library\:default_portal_book_reports.Book\:default_portal_page_boReports1.BookMember\:default_portal_page_boReports1.Page\:boInfoViewIframe_1.PageMember\:boInfoViewIframe_1.PortletInst\:boInfoViewIframe_1.Localization</p>
<div>
<hr size="1" />
<div>
<p><a href="#_ftnref1">[1]</a> It is important to note that the scope file changes on every propagation run, and must be re-created for each run.</p>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/06/propagation-scope-example/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Perpetuating Propagation Perplexity</title>
		<link>http://techblog.fywservices.com/2011/05/perpetuating-propagation-perplexity/</link>
		<comments>http://techblog.fywservices.com/2011/05/perpetuating-propagation-perplexity/#comments</comments>
		<pubDate>Thu, 12 May 2011 18:51:49 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>
		<category><![CDATA[Worth A Try]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=623</guid>
		<description><![CDATA[The WLP 10.3.2 documentation: Propagation Inventory Compatibility states WebLogic Portal inventories saved with WebLogic Portal 8.1 or 9.2 cannot be used with WebLogic Portal 10.3.2 propagation tools. While this implies that a 10.2 inventory can be used, it does not specifically say so.  This came up for someone I know who then asked support if [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>The WLP 10.3.2 documentation: <a href="http://download.oracle.com/docs/cd/E15919_01/wlp.1032/e14253/appx_functional_changes.htm#i1098151">Propagation Inventory Compatibility</a> states</p>
<blockquote><p>WebLogic Portal inventories saved with WebLogic Portal 8.1 or 9.2 cannot be used with WebLogic Portal 10.3.2 propagation tools.</p></blockquote>
<p>While this <em>implies</em> that a 10.2 inventory can be used, it does not <em>specifically</em> say so.  This came up for someone I know who then asked support if one could propagate from a 10.2 environment to a 10.3.2 environment since they wanted to build out a new, clean infrastructure for their upgraded WLP application rather than running an upgrade in the old production environment. The response was quick and short: &#8220;No&#8221;.</p>
<p>So, being the way I am, I tried it anyway. Works fine. Granted, there are probably many legitimate reasons for not doing this, and I would never suggest it for on-going operations, but as a one-shot move from an existing environment to a new environment it is definitely worth a test run before changing your upgrade strategy.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/05/perpetuating-propagation-perplexity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Resurrecting the WLP Data Sync Web Application in 10.3.2</title>
		<link>http://techblog.fywservices.com/2011/05/resurrecting-the-wlp-data-sync-web-application-in-10-3-2/</link>
		<comments>http://techblog.fywservices.com/2011/05/resurrecting-the-wlp-data-sync-web-application-in-10-3-2/#comments</comments>
		<pubDate>Wed, 11 May 2011 20:59:33 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=618</guid>
		<description><![CDATA[In WLP 10.3.2, the datasync web application has been deprecated. This makes sense if you consider the recommended approach is to test all of your Datasync Project work in DEV mode and then propagate up once you have everything the way you want. However, if you are upgrading or have a development process where this [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>In WLP 10.3.2, the datasync web application has been deprecated. This makes sense if you consider the recommended approach is to test all of your Datasync Project work in DEV mode and then propagate up once you have everything the way you want. However, if you are upgrading or have a development process where this is not the easiest policy to implement, you may wish to bring back the datasync.war. If that is you, fear not! Blogging to the rescue!</p>
<p>While in previous versions of WLP it was automatically added to a portal EAR project, in 10.3.2 you must manually add the dataync.war.</p>
<p>The documented  approach (<a href="https://supporthtml.oracle.com/ep/faces/secure/km/DocumentDisplay.jspx?id=1268447.1&amp;h=Y" target="_blank">How To Import and Add the Deprecated &#8216;Datasync.war&#8217; to the WebLogic Portal Application (Doc ID 1268447.1)</a>) to add it is to use OEPE, right-click on the EAR project, select Import War, and import [WLP_HOME]\p13n\deprecated\lib\datasync.war. Doing so creates a datasync project in your workspace.</p>
<p>The documentation goes on to describe an edit to the MANIFEST.MF to include the classes from ImportedClasses on the classpath. When I tried it, I could get to the data sync application index page, but would get a 500 error past that.</p>
<p>Digging through the logs, I found class not found exceptions. I eventually fixed this by moving the jsp folder under/datasync/ImportedClasses/WEB-INF/classes/com/bea/p13n/management/data to /datasync/ImportedClasses/com/bea/p13n/management/data, re-building and re-deploying.</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/05/resurrecting-the-wlp-data-sync-web-application-in-10-3-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating SAML Token Tip for Non-WLS Admins</title>
		<link>http://techblog.fywservices.com/2011/04/creating-saml-token-tip-for-non-wls-admins/</link>
		<comments>http://techblog.fywservices.com/2011/04/creating-saml-token-tip-for-non-wls-admins/#comments</comments>
		<pubDate>Thu, 28 Apr 2011 20:14:53 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>
		<category><![CDATA[WebLogic Server]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=609</guid>
		<description><![CDATA[The documentation for setting up SAML for WLP WSRP is very straight-forward except for one small item that us non-admins may not think of: Once you have your command window open, you need to run the setDomainEnv script in that window before calling the keytool. Otherwise, you get a nice response from the commands, but [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>The <a href="http://download.oracle.com/docs/cd/E15919_01/wlp.1032/e14235/chap_security_saml.htm#i1008019" target="_blank">documentation</a> for setting up SAML for WLP WSRP is very straight-forward except for one small item that us non-admins may not think of: Once you have your command window open, you need to run the setDomainEnv script in that window before calling the keytool. Otherwise, you get a nice response from the commands, but the domain is not configured to use the results!</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/04/creating-saml-token-tip-for-non-wls-admins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Useful Eclipse Update Sites for WLP Developers</title>
		<link>http://techblog.fywservices.com/2011/02/useful-eclipse-update-sites-for-wlp-developers/</link>
		<comments>http://techblog.fywservices.com/2011/02/useful-eclipse-update-sites-for-wlp-developers/#comments</comments>
		<pubDate>Wed, 16 Feb 2011 12:26:20 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Subversion]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=601</guid>
		<description><![CDATA[Two handy plug-ins with the update URLs that work with OEPE: SQL Explorer -  http://eclipsesql.sourceforge.net/ Subversion for Eclipse -  http://www.polarion.org/projects/subversive/download/1.1/update-site/]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>Two handy plug-ins with the update URLs that work with OEPE:</p>
<p>SQL Explorer -  http://eclipsesql.sourceforge.net/</p>
<p>Subversion for Eclipse -  http://www.polarion.org/projects/subversive/download/1.1/update-site/</p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2011/02/useful-eclipse-update-sites-for-wlp-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dev2Dev YSlow and WLP Article (Re-)Found</title>
		<link>http://techblog.fywservices.com/2010/12/dev2dev-yslow-and-wlp-article-re-found/</link>
		<comments>http://techblog.fywservices.com/2010/12/dev2dev-yslow-and-wlp-article-re-found/#comments</comments>
		<pubDate>Fri, 17 Dec 2010 15:34:23 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[HMTL and CSS]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[WebLogic Portal]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=578</guid>
		<description><![CDATA[http://skipsauls.blogspot.com/2008/06/web-20-performance-optimization-get-a.html]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p><a href="http://skipsauls.blogspot.com/2008/06/web-20-performance-optimization-get-a.html" target="_blank">http://skipsauls.blogspot.com/2008/06/web-20-performance-optimization-get-a.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2010/12/dev2dev-yslow-and-wlp-article-re-found/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Banishing Browser Caching in WebLogic Portal 10.3.2</title>
		<link>http://techblog.fywservices.com/2010/09/banishing-browser-caching-in-weblogic-portal-10-3-2/</link>
		<comments>http://techblog.fywservices.com/2010/09/banishing-browser-caching-in-weblogic-portal-10-3-2/#comments</comments>
		<pubDate>Mon, 13 Sep 2010 21:14:11 +0000</pubDate>
		<dc:creator>Scott Nelson</dc:creator>
				<category><![CDATA[WebLogic Portal]]></category>

		<guid isPermaLink="false">http://techblog.fywservices.com/?p=542</guid>
		<description><![CDATA[I had a problem the other day where a user that was logged out still had their name showing on the screen. I thought the session wasn&#8217;t being invalidated, but it was actually a case of the browser caching the page. Digging around, I found a solution that, when added to a backing file for [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=1fdcc5aa84fd409b74de32bfd26699ba&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>I had a problem the other day where a user that was logged out still had their name showing on the screen. I thought the session wasn&#8217;t being invalidated, but it was actually a case of the browser caching the page. Digging around, I found a solution that, when added to a backing file for the desktop to run during pre-render did the trick:</p>
<pre class="brush:java">import com.bea.netuix.servlets.controls.content.backing
               .JspBacking;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class NoCacheBacking implements JspBacking

{
   public void dispose(){}
   public boolean handlePostbackData(HttpServletRequest request,
      HttpServletResponse response)
   {

      return false;
   }

   public void init(HttpServletRequest request,
      HttpServletResponse response){}
   public boolean preRender(HttpServletRequest request,
      HttpServletResponse response)
   {
      response.setHeader("Cache-Control" ,
                   "no-cache, must-revalidate");
      response.setHeader("Pragma", "no-cache");
      response.setHeader("Cache-Control","no-store");
      response.setDateHeader ("Expires", 0);

      return false;
   }
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://techblog.fywservices.com/2010/09/banishing-browser-caching-in-weblogic-portal-10-3-2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

