<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>/ideas/and/solutions/and/tips/and/tricks</title>
	<atom:link href="http://ayhanalkan.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://ayhanalkan.wordpress.com</link>
	<description>Ayhan&#039;s tech talks</description>
	<lastBuildDate>Tue, 16 Feb 2010 07:32:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='ayhanalkan.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://0.gravatar.com/blavatar/8c1250dfd6410ced0157e2e97cf5a157?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>/ideas/and/solutions/and/tips/and/tricks</title>
		<link>http://ayhanalkan.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://ayhanalkan.wordpress.com/osd.xml" title="/ideas/and/solutions/and/tips/and/tricks" />
	<atom:link rel='hub' href='http://ayhanalkan.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Contemporary Problems in Enterprise Identity Management</title>
		<link>http://ayhanalkan.wordpress.com/2010/02/16/contemporary-problems-in-enterprise-identity-management/</link>
		<comments>http://ayhanalkan.wordpress.com/2010/02/16/contemporary-problems-in-enterprise-identity-management/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 07:09:14 +0000</pubDate>
		<dc:creator>ayhan</dc:creator>
				<category><![CDATA[Academic Paper]]></category>
		<category><![CDATA[Access Control]]></category>
		<category><![CDATA[Authentication]]></category>
		<category><![CDATA[Authorization]]></category>
		<category><![CDATA[Identity Management]]></category>
		<category><![CDATA[RBAC]]></category>
		<category><![CDATA[Adentity Management]]></category>
		<category><![CDATA[IdM]]></category>

		<guid isPermaLink="false">http://ayhanalkan.wordpress.com/?p=18</guid>
		<description><![CDATA[Our paper at Academic IT 2010 at Mugla, Turkey is presented on Feb11, 2010.  The paper is in Turkish and downloadable here.  The abstract in English is below. Abstract:  The last few decades witnessed ever-increasing complexity of information infrastructures and escalating variety of on-line services offered to customers and business partners. These developments resulted in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=18&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Our paper at <strong>Academic IT 2010</strong> at Mugla, Turkey is presented on Feb11, 2010.  The paper is in Turkish and downloadable <a href="http://ayhanalkan.com/218.pdf" target="_blank">here</a>.  The abstract in English is below.</p>
<p><strong>Abstract</strong>:  The last few decades witnessed ever-increasing complexity of information infrastructures and escalating variety of on-line services offered to customers and business partners. These developments resulted in high number of virtual identities for individuals. As a result, it became a major problem to maintain the integrity and security of virtual identities in various platforms. Organizations developed identity management systems with the aim of easing the burden of the system managers, reducing identity management costs, increasing service quality and user satisfaction, and aligning identity management processes with other business processes. This article will focus on the strategies and problems in development and implementation of identity management systems. An identity management application in Turkey will also be explained.</p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=3964a33f-2c7b-8b59-a7bc-b38603cc6f63" alt="" /></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ayhanalkan.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ayhanalkan.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ayhanalkan.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ayhanalkan.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ayhanalkan.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ayhanalkan.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ayhanalkan.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ayhanalkan.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ayhanalkan.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ayhanalkan.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ayhanalkan.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ayhanalkan.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ayhanalkan.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ayhanalkan.wordpress.com/18/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=18&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ayhanalkan.wordpress.com/2010/02/16/contemporary-problems-in-enterprise-identity-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b20c4a492466bce22741733addb4cba7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ayhan</media:title>
		</media:content>

		<media:content url="http://img.zemanta.com/pixy.gif?x-id=3964a33f-2c7b-8b59-a7bc-b38603cc6f63" medium="image" />
	</item>
		<item>
		<title>How to Log an Audit Event from an IdM Rule</title>
		<link>http://ayhanalkan.wordpress.com/2010/01/06/how-to-log-an-audit-event-from-an-idm-rule/</link>
		<comments>http://ayhanalkan.wordpress.com/2010/01/06/how-to-log-an-audit-event-from-an-idm-rule/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 11:38:53 +0000</pubDate>
		<dc:creator>ayhan</dc:creator>
				<category><![CDATA[SUN IdM]]></category>

		<guid isPermaLink="false">http://ayhanalkan.wordpress.com/?p=6</guid>
		<description><![CDATA[Probably it is not frequently needed, but if you need to log an audit event outsize of a workflow somehow, you can use the following IdM rule to accomplish it.  For argument comments please refer to &#8216;Audit&#8217; workflow because I exactly the same argument names. &#60;Rule name='logAudit'&#62; &#60;Comments&#62; Refer to Audit workflow for argument definitions [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=6&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Probably it is not frequently needed, but if you need to log an audit event outsize of a workflow somehow, you can use the following IdM rule to accomplish it.  For argument comments please refer to &#8216;Audit&#8217; workflow because I exactly the same argument names.</p>
<pre>&lt;Rule name='logAudit'&gt;

    &lt;Comments&gt;
        Refer to Audit workflow for argument definitions
    &lt;/Comments&gt;

    &lt;RuleArgument name="type"/&gt;
    &lt;RuleArgument name="action"/&gt;
    &lt;RuleArgument name="name"/&gt;
    &lt;RuleArgument name="status"/&gt;
    &lt;RuleArgument name='reason'/&gt;
    &lt;RuleArgument name='subject'/&gt;
    &lt;RuleArgument name='resource'/&gt;
    &lt;RuleArgument name='accountId'/&gt;
    &lt;RuleArgument name='error'/&gt;
    &lt;RuleArgument name='role'/&gt;
    &lt;RuleArgument name='parameters'/&gt;
    &lt;RuleArgument name='attributes'/&gt;

    &lt;block&gt;
        &lt;defvar name='event'&gt;
            &lt;new class='com.waveset.object.AuditEvent'&gt;
                &lt;ref&gt;type&lt;/ref&gt;
                &lt;ref&gt;action&lt;/ref&gt;
            &lt;/new&gt;
        &lt;/defvar&gt;

        &lt;invoke name='setObjectName'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;name&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setStatus'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;status&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setErrorString'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;error&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setReason'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;reason&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setResourceName'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;resource&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setAccountId'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;accountId&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setRoleName'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;role&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setParameterList'&gt;
                &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;parameters&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setAuditableAttributes'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;ref&gt;attributes&lt;/ref&gt;
        &lt;/invoke&gt;
        &lt;invoke name='setSubjectName'&gt;
            &lt;ref&gt;event&lt;/ref&gt;
            &lt;cond&gt;
                &lt;isnull&gt;
                    &lt;ref&gt;subject&lt;/ref&gt;
                &lt;/isnull&gt;
                &lt;invoke name='getName'&gt;
                    &lt;invoke name='getSubject'&gt;
                        &lt;rule name='EndUserRuleLibrary:getCallerSession'/&gt;
                    &lt;/invoke&gt;
                &lt;/invoke&gt;
                &lt;ref&gt;subject&lt;/ref&gt;
            &lt;/cond&gt;
        &lt;/invoke&gt;

        &lt;invoke name='logEvent'&gt;
            &lt;invoke name='getLogger' class='com.sun.idm.logging.audit.AuditManager'/&gt;
            &lt;ref&gt;event&lt;/ref&gt;
        &lt;/invoke&gt;
    &lt;/block&gt;
&lt;/Rule&gt;</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ayhanalkan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ayhanalkan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ayhanalkan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ayhanalkan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ayhanalkan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ayhanalkan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ayhanalkan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ayhanalkan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ayhanalkan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ayhanalkan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ayhanalkan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ayhanalkan.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ayhanalkan.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ayhanalkan.wordpress.com/6/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=6&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ayhanalkan.wordpress.com/2010/01/06/how-to-log-an-audit-event-from-an-idm-rule/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b20c4a492466bce22741733addb4cba7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ayhan</media:title>
		</media:content>
	</item>
		<item>
		<title>How to Create a Web Services Resource for IdM</title>
		<link>http://ayhanalkan.wordpress.com/2007/05/13/how-to-create-a-web-services-resource-for-idm/</link>
		<comments>http://ayhanalkan.wordpress.com/2007/05/13/how-to-create-a-web-services-resource-for-idm/#comments</comments>
		<pubDate>Sun, 13 May 2007 13:29:29 +0000</pubDate>
		<dc:creator>ayhan</dc:creator>
				<category><![CDATA[SUN IdM]]></category>

		<guid isPermaLink="false">http://ayhanalkan.wordpress.com/2007/05/13/how-to-create-a-web-services-resource-for-idm/</guid>
		<description><![CDATA[Some of the customers are (mostly they could not explain why) insist on allowing access to their resources, even to simple DB tables, through Web Services only. Due to IdM does not have any Web Services resource adapter, we, conventionally, have two options to implement such an adapter: Developing a Custom Adapter from Scratch : [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=5&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Some of the customers are (mostly they could not explain why) insist on allowing access to their resources,  even to simple DB tables, through Web Services only.  Due to  IdM does not have any Web Services resource adapter, we, conventionally, have two options to implement such an adapter:</p>
<ol>
<li><strong>Developing a Custom Adapter from Scratch : </strong>Although this is the most effective way, it takes very long  time and a great amount of development effort.</li>
<li><strong>Using the Shell Script Adapter</strong> : At this technique, we create executable Web Services clients to communicate from command line.  Then, we create shell scripts to run these executables and communicate with them through standard input/output for data exchange.  In addition to extra application loading costs, this method has several potential problems such as character encoding, misinterpretation caused by special characters.</li>
</ol>
<p>Instead, we developed a tricky solution using the Scripted JDBC Adapter <img src='http://s2.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  which has several pros over classic approaches as follows:</p>
<ul>
<li> Rapid development</li>
<li>Easy to  test and maintenance</li>
<li>Much more fast and efficient than using the Shell Script Adapter</li>
</ul>
<h3>Implementation</h3>
<ol>
<li>Create and compile Web Services client code in Java.  No matter which framework you prefer, I used <a href="http://ws.apache.org/axis/" title="Axis" target="_blank">Axis</a> 1.4 at the following example.  I strongly recommend you to use <a href="http://soapui.org/" title="SoapUI" target="_blank">SoapUI</a> toolkit for WS evaluation, testing, and code generation.</li>
<li>Add client classes to IdM&#8217;s web application classpath, either copying class files to WEB-INF/classes directory or copying the jar pack to WEB-INF/lib directory.</li>
<li>Create a fake Scripted JDBC adapter.</li>
<li>Create functional <strong>Javascript</strong> or <strong>BeanShell</strong> scripts to implement adapter capabilities with Java calls for WS requests and data exchange in between IdM and the WS client implementation.  At the end of this article, you&#8217;ll find  a sample &#8216;get user&#8217; script in BeanShell.</li>
<li>Upload the scripts and test the resource.</li>
</ol>
<h3>Conclusion</h3>
<p>Yes, it is a drawback to have a never used database connection, but it is still, in my opinion, a better solution then using Shell Script Adapter and more practical than developing a new adapter. If I have some free time, I am willing to develop a general purpose scripting adapter at this summer.</p>
<ul></ul>
<h3>Appendix : A Sample getUser script</h3>
<pre>&lt;?xml version ='1.0' encoding = 'UTF-8'?&gt;&lt;!DOCTYPE Waveset PUBLIC 'waveset.dtd' 'waveset.dtd'&gt;&lt;Waveset&gt;
    &lt;ResourceAction name='NDS-getUser-bsh'&gt;
        &lt;ResTypeAction restype='ScriptedJDBC' actionType='BeanShell' &gt;
            &lt;act&gt;
import com.primecomponents.idm.avea.nds.UserManagementServiceLocator;
id         = actionContext.get("id");
action     = actionContext.get("action");
attrsToGet = actionContext.get("attrsToGet");
result     = actionContext.get("result");
errors     = actionContext.get("errors");
trace      = actionContext.get("trace");endpointAddress = "http://10.4.26.195:7001/IDMUserWebService/UserManagement";

var attrMap = new java.util.HashMap();
trace.info4( "NDS_getUser", "Starting the script." );

try {
    var locator = new UserManagementServiceLocator();
    locator.setUserManagementSoapPortEndpointAddress( endpointAddress );
    var userMgr = locator.getUserManagementSoapPort();
    var user = userMgr.getUser( id );

    if ( user != null )
    {
        trace.info4("NDS_getUser", "Converting the user object to an attribute map.");
        if ( user.getSurname() != null )
            attrMap.put( "userSurname", user.getSurname() );
        if ( user.getName() != null )
            attrMap.put( "userName", user.getName() );
        if ( user.getGroupId() != null )
            attrMap.put( "groupId", user.getGroupId().toString() );
        result.put( "attrMap", attrMap );
    }
    trace.info4( "NDS_getUser", "Ending operations successfully." );
} catch ( Exception ex ) {
errors.add( new com.waveset.msgcat.Message( ex.getMessage() ) );
trace.caught1( "NDS_getUser", ex );
}
trace.info4( "NDS_getUser", "Ending the script - after try/catch." );
            &lt;/act&gt;
        &lt;/ResTypeAction&gt;
    &lt;/ResourceAction&gt;
&lt;/Waveset&gt;</pre>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ayhanalkan.wordpress.com/5/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ayhanalkan.wordpress.com/5/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ayhanalkan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ayhanalkan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ayhanalkan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ayhanalkan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ayhanalkan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ayhanalkan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ayhanalkan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ayhanalkan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ayhanalkan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ayhanalkan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ayhanalkan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ayhanalkan.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ayhanalkan.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ayhanalkan.wordpress.com/5/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=5&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ayhanalkan.wordpress.com/2007/05/13/how-to-create-a-web-services-resource-for-idm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b20c4a492466bce22741733addb4cba7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ayhan</media:title>
		</media:content>
	</item>
		<item>
		<title>Never use long integer values in XPRESS</title>
		<link>http://ayhanalkan.wordpress.com/2007/04/27/never-use-long-integer-values-in-xpress/</link>
		<comments>http://ayhanalkan.wordpress.com/2007/04/27/never-use-long-integer-values-in-xpress/#comments</comments>
		<pubDate>Fri, 27 Apr 2007 08:31:55 +0000</pubDate>
		<dc:creator>ayhan</dc:creator>
				<category><![CDATA[SUN IdM]]></category>

		<guid isPermaLink="false">http://ayhanalkan.wordpress.com/2007/04/27/never-use-long-integer-values-in-xpress/</guid>
		<description><![CDATA[Though XML Object Language has a &#60;Long&#62; data type for long integers, XPRESS Language has not a similar &#60;long&#62; data type. Therefore, in forms, workflows, email templates you can not use dynamic long integer values, even comparing long values returned from Java object methods. For instance, if you have two date objects and want to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=4&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Though XML Object Language has a &lt;Long&gt; data type for long integers, XPRESS Language has not a similar &lt;long&gt; data type.  Therefore, in forms, workflows, email templates you can not use dynamic long integer values, even comparing long values returned from Java object methods.  For instance, if you have two date objects and want to compare them, you should not use such following statement :</p>
<pre>&lt;gt&gt;
    &lt;invoke name='getTime'&gt;
        &lt;ref&gt;date1&lt;/ref&gt;
    &lt;/invoke&gt;
    &lt;invoke name='getTime'&gt;
        &lt;ref&gt;date2&lt;/ref&gt;
    &lt;/invoke&gt;
&lt;/gt&gt;</pre>
<p>Depending on returning long integer values of <code>java.util.Date.getTime()</code> method of your Date instances and their casted integer values, you would get either true or false!!! Particularly for java.util.Date class, you must prefer to call <code>date1.after( date2 )</code> with following XPRESS equivalent:</p>
<pre>
&lt;invoke name='after'&gt;
    &lt;ref&gt;date1&lt;/ref&gt;
    &lt;ref&gt;date2&lt;/ref&gt;
&lt;/invoke&gt;</pre>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/ayhanalkan.wordpress.com/4/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/ayhanalkan.wordpress.com/4/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/ayhanalkan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/ayhanalkan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/ayhanalkan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/ayhanalkan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/ayhanalkan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/ayhanalkan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/ayhanalkan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/ayhanalkan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/ayhanalkan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/ayhanalkan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/ayhanalkan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/ayhanalkan.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/ayhanalkan.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/ayhanalkan.wordpress.com/4/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=ayhanalkan.wordpress.com&amp;blog=286369&amp;post=4&amp;subd=ayhanalkan&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://ayhanalkan.wordpress.com/2007/04/27/never-use-long-integer-values-in-xpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/b20c4a492466bce22741733addb4cba7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ayhan</media:title>
		</media:content>
	</item>
	</channel>
</rss>
