<?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>Tork Wrench &#187; Portal 6.1</title>
	<atom:link href="http://www.torkwrench.com/tag/portal-61/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.torkwrench.com</link>
	<description>Things I learnt today, working on IBM Lotus Web Content Management.</description>
	<lastBuildDate>Tue, 17 Aug 2010 06:50:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>How to solve CWWIM4520E on Portal 6.1</title>
		<link>http://www.torkwrench.com/2009/05/27/how-to-solve-cwwim4520e-on-portal-61/</link>
		<comments>http://www.torkwrench.com/2009/05/27/how-to-solve-cwwim4520e-on-portal-61/#comments</comments>
		<pubDate>Wed, 27 May 2009 06:52:20 +0000</pubDate>
		<dc:creator>Graham</dc:creator>
				<category><![CDATA[howto]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[portal]]></category>
		<category><![CDATA[Portal 6.1]]></category>

		<guid isPermaLink="false">http://www.torkwrench.com/?p=82</guid>
		<description><![CDATA[How to solve EJPSG0015E, CWWIM4520E by remapping portal attributes to ldap ones. <a href="http://www.torkwrench.com/2009/05/27/how-to-solve-cwwim4520e-on-portal-61/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>You may have seen this error if you tried the steps in <a href="http://www.torkwrench.com/2009/04/20/configuring-wcm-email-actions-with-a-local-smtp-server/">&#8220;Configuring WCM email actions with a local SMTP server&#8221;</a>.</p>
<p>When you edit the user&#8217;s properties this nasty error can appear if your Portal server is connected to an LDAP.</p>
<div id="attachment_83" class="wp-caption aligncenter" style="width: 526px"><img class="size-full wp-image-83" title="ldap-error" src="http://www.torkwrench.com/wp-content/uploads/2009/05/ldap-error.png" alt="Error entering mail address into Self Care Portlet" width="516" height="584" /><p class="wp-caption-text">Error entering mail address into Self Care Portlet</p></div>
<p>Btw, this is a 6.1 or Portal.Next beta specific error, it should work fine on 6.0.</p>
<p>Here&#8217;s the full text of the error:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">com.ibm.wps.util.DataBackendException: EJPSG0015E: Data Backend Problem<br />
com.ibm.websphere.wim.exception.WIMSystemException: <br />
CWWIM4520E The 'javax.naming.directory.SchemaViolationException: <br />
[LDAP: error code 65 - Object Class Violation]; <br />
remaining name 'uid=xyzadmin,ou=People,dc=test'; <br />
resolved object com.sun.jndi.ldap.LdapCtx@65aa65aa' <br />
naming exception occurred during processing.</div></div>
<p>The reason this happens is that the portlet ( the self care portlet in this case)  is wired up to write the email address you entered in the form to a <a href="http://www.ibm.com/developerworks/websphere/techjournal/0701_ilechko/0701_ilechko.html">VMM</a> attribute called ibm-primaryEmail . If your ldap schema doesn&#8217;t have a user attribute in it called ibm-primaryEmail , then you&#8217;re going to get an error when you try and write something to it.</p>
<p>Just to check it out, let&#8217;s look at the LDAP schema on this server (which is IBM Tivoli Directory Server 6.0)  . I&#8217;m using the awesome and free <a href="http://directory.apache.org/studio/">Apache Directory Studio </a>to investigate the LDAP schema here.  Once the connection to the ldap is defined, go LDAP -&gt; Open Schema Browser , and select the tab attribute types.</p>
<div id="attachment_85" class="wp-caption aligncenter" style="width: 506px"><img class="size-full wp-image-85" title="schema1" src="http://www.torkwrench.com/wp-content/uploads/2009/05/schema1.png" alt="TDS ldap schema" width="496" height="616" /><p class="wp-caption-text">TDS ldap schema</p></div>
<p>Ok, so we have an attribute type &#8216;drink, favouriteDrink&#8217; ;o) , but no ibm-primaryEmail . No matter, there is a &#8216;mail&#8217; attribute there. We can make Portal use that to save email related attributes.</p>
<p>Open up wkplc.properties and find the section entitled <strong>LDAP Attribute Configuration</strong> (it&#8217;s near the bottom) . Here&#8217;s my completed one:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># Use the following &nbsp;properties to add an attribute mapping between the<br />
# Portal attribute name and the ldap attribute name<br />
<br />
# the name of the attribute in LDAP<br />
standalone.ldap.attributes.mapping.ldapName=mail<br />
<br />
# the name of the attribute in portal<br />
standalone.ldap.attributes.mapping.portalName=ibm-primaryEmail<br />
<br />
# list of entityTypes the mapping should be applied to<br />
standalone.ldap.attributes.mapping.entityTypes=PersonAccount</div></div>
<p>Cool, now run the task :</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ConfigEngine.sh wp-update-standalone-ldap-attribute-config</div></div>
<p>If you are using a federated ldap setup, edit the corresponding federated properties instead, and then run the following task:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ConfigEngine.sh wp-update-federated-ldap-attribute-config</div></div>
<p>. Restart the server and try the form again. It should correctly save the email attribute for the user and you can get on with sending email through Portal. Just for kicks, lets look at what that task did. It just edits the wimconfig file, which defines how VMM interacts . Open wimconfig.xml (wp_profile/config/cells/&lt;cellname&gt;/wim/config/wimconfig.xml) and search for ibm-primaryEmail.</p>
<p>Here is the part that does the mapping:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&lt;config:attributes name=&quot;mail&quot; propertyName=&quot;ibm-primaryEmail&quot;&gt;<br />
&lt;config:entityTypes&gt;PersonAccount&lt;/config:entityTypes&gt;<br />
&lt;/config:attributes&gt;</div></div>
<p>So the task is really just a (welcome) convenience, all it does it edit the xml file for you. Anyone who has tried to set up multirealms on 6.0 would be grateful for that!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.torkwrench.com/2009/05/27/how-to-solve-cwwim4520e-on-portal-61/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Getting WebSphere Portal to install on Ubuntu</title>
		<link>http://www.torkwrench.com/2009/05/04/getting-websphere-portal-to-install-on-ubuntu/</link>
		<comments>http://www.torkwrench.com/2009/05/04/getting-websphere-portal-to-install-on-ubuntu/#comments</comments>
		<pubDate>Mon, 04 May 2009 04:32:20 +0000</pubDate>
		<dc:creator>Graham</dc:creator>
				<category><![CDATA[howto]]></category>
		<category><![CDATA[6.0]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[Portal 6.1]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[WebSphere Application Server]]></category>
		<category><![CDATA[WebSphere Portal]]></category>

		<guid isPermaLink="false">http://www.torkwrench.com/?p=52</guid>
		<description><![CDATA[Portal 6.1 will not install on Ubuntu out of the box. Here's how to fix it. <a href="http://www.torkwrench.com/2009/05/04/getting-websphere-portal-to-install-on-ubuntu/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Ok, ok, I know Ubuntu isn&#8217;t supported by IBM, but if you&#8217;re a developer, and you run Ubuntu on your laptop and would like to run Portal on there too, here&#8217;s how you do it. This should work for Debian too . I guess this isn&#8217;t really a Portal only problem, rather it&#8217;s a general Application Server + Ubuntu issue.  I&#8217;ve only tried this with 6.1, but it is probably an issue with 6.0 as well, since it uses similar profile creation code.</p>
<p>For some reason Ubuntu, ships a shell called &#8216;dash&#8217; as their default, rather than good old bash. <a href="https://wiki.ubuntu.com/DashAsBinSh">(Well, they have their reasons.) </a> This presents a problem for App Server, as all the scripts in AppServer/bin use #!/bin/sh (the Bourne shell) as their command interpreter, which on a Redhat machine is symlinked to /bin/bash . The reason why AppServer uses the Bourne shell is that it needs to work on AIX and Solaris too, and you can&#8217;t be sure that you have bash on one of those machines.</p>
<p>If you try to call wsadmin.sh on an Ubuntu system you get this error :</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">/opt/WebSphere/AppServer/bin/wsadmin.sh: 116: Bad substitution</div></div>
<p>Now, when you&#8217;re installing Portal, it installs AppServer, and then calls the manageprofile.sh script to create the default profile for Portal  &#8220;wp_profile&#8221; . Manageprofile.sh calls a bunch of ant scripts that needs to use wsadmin.sh (you can see where I&#8217;m going here&#8230;.) .  You might notice in AppServer/log/wp_profile_create.log messages like this :</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&lt;message&gt;Checking for wsadmin listener initialization&lt;/message&gt;<br />
&lt;message&gt;Is wsadmin listener available? ? false&lt;/message&gt;<br />
&lt;message&gt;Returning with returnCode=-1&lt;/message&gt;<br />
&lt;message&gt;Failure detected in fatal config action.&lt;/message&gt;<br />
&lt;message&gt;wsadmin failed with exception = wsadmin task failed with return code :-1&lt;/message&gt;</div></div>
<p>It actually hangs for 20 minutes waiting for wsadmin to start! </p>
<p>So how do you fix it? Simply, before you install it, unlink /bin/sh -> /bin/dash , and relink so it reads /bin/sh -> /bin/bash</p>
<p>Carefully:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cd /bin<br />
unlink sh<br />
ln -s /bin/bash sh</div></div>
<p>Now the install should run properly. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.torkwrench.com/2009/05/04/getting-websphere-portal-to-install-on-ubuntu/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>
