<?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>UnderworldLabs.org &#187; web</title>
	<atom:link href="http://underworldlabs.org/tag/web/feed/" rel="self" type="application/rss+xml" />
	<link>http://underworldlabs.org</link>
	<description>My Dropbox</description>
	<lastBuildDate>Tue, 20 Mar 2012 23:54:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>SOAP Response Codes</title>
		<link>http://underworldlabs.org/blog/soap-response-codes/</link>
		<comments>http://underworldlabs.org/blog/soap-response-codes/#comments</comments>
		<pubDate>Thu, 20 Oct 2011 11:47:04 +0000</pubDate>
		<dc:creator>Takis Diakoumis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[soap]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://underworldlabs.org/?p=192</guid>
		<description><![CDATA[I recently had an issue where as a part of a SOAP fault response I wanted to return a HTML response code that better represented...]]></description>
			<content:encoded><![CDATA[<p>I recently had an issue where as a part of a SOAP fault response I wanted to return a HTML response code that better represented what the error was &#8211; in this case that a particular record requested via the service did not exist for the supplied identifier.</p>
<p>This sort of request might return a response code of 200 in a more typical web request with perhaps a relevant error message or similar. It felt that within a service &#8211; no human action, intervention or response &#8211; something a little more informative or appropriate was required such as <em>422 Unprocessable Entity</em>.</p>
<p>To achieve this I defined an out fault interceptor as follows.</p>
<pre>
        &lt;jaxws:outFaultInterceptors&gt;
            &lt;bean class="mypackage.MyServiceOutInterceptor"/&gt;
        &lt;/jaxws:outFaultInterceptors&gt;
</pre>
<p>The implementation was rather simple in the end:</p>
<pre>
public class MyServiceOutInterceptor extends AbstractSoapInterceptor {

    public MyServiceOutInterceptor() {
        super(Phase.SEND);
    }

    public void handleMessage(SoapMessage soapMessage) throws Fault {

        Set&lt;Class&lt;?&gt;&gt; formats = soapMessage.getContentFormats();
        for (Class&lt;?&gt; format : formats) {

            Object content = soapMessage.getContent(format);
            if (isServiceError(content)) {
                ServiceFaultException exception = asServiceError(content);
                soapMessage.put(org.apache.cxf.message.Message.RESPONSE_CODE, exception.getResponseCode());
                break;
            }

        }

    }

    private ServiceFaultException asServiceError(Object content) {
        return (ServiceFaultException) ((Fault) content).getCause();
    }

    private boolean isServiceError(Object content) {
        return (content.getClass().isAssignableFrom(SoapFault.class))
                &#038;&#038; (((Fault) content).getCause() instanceof ServiceFaultException);
    }

}
</pre>
<p>We check that we have a valid error, and then deliberately set the response code for the SOAP message.</p>
<p>The ServiceFaultException class shown above is defined as a web fault using @WebFault and the relevant error message and code is set as required.</p>
<p>So, the merits of returning 422 for an entity that can not be found aside, the above demonstrates how to change the response code returned as a part of a SOAP fault to anything you like.</p>
]]></content:encoded>
			<wfw:commentRss>http://underworldlabs.org/blog/soap-response-codes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sign-Up and Login pages</title>
		<link>http://underworldlabs.org/blog/sign-up-and-login-pages/</link>
		<comments>http://underworldlabs.org/blog/sign-up-and-login-pages/#comments</comments>
		<pubDate>Thu, 05 May 2011 14:46:12 +0000</pubDate>
		<dc:creator>Takis Diakoumis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[web 2.0]]></category>

		<guid isPermaLink="false">http://underworldlabs.org/?p=137</guid>
		<description><![CDATA[Just read a great piece on login and sign-up page development. I have spent a ridiculous amount of time in the past on both of...]]></description>
			<content:encoded><![CDATA[<p>Just read a great piece on login and sign-up page development. I have spent a ridiculous amount of time in the past on both of these and <a href="http://www.smashingmagazine.com/2011/05/05/innovative-techniques-to-simplify-signups-and-logins/">this</a> piece on <a href="http://http://www.smashingmagazine.com/">SmashingMagazine</a> offers some interesting new ideas especially around the use of setting your password on a sign-up form and login user name practices. </p>
<p>Admittedly when registering on a new site I almost always just cut and paste my password into the repeat password field. Indeed with various systems now insisting on specific character patterns, i would imagine the purpose-defeating practice of cut/paste into the repeat password field is only more prevalent. The Smashing piece includes a <a href="http://jquery.org/">JQuery</a> <a href="http://www.prothemer.com/blog/research-and-development/new-jquery-plugin-targeting-usability-for-password-masking-on-forms/">plugin</a> that allows for a single password field that may be toggled to show the entered password &#8211; definitely worth a look.</p>
<p>The login user name suggestion is much simpler &#8211; allow users the ability to login with either a user name or email address &#8211; both should be unique in any case and your email address is certainly harder to forget. </p>
<p>Check the article out here &#8212; <a href="http://www.smashingmagazine.com/2011/05/05/innovative-techniques-to-simplify-signups-and-logins/">Innovative Techniques To Simplify Sign-Ups and Log-Ins</a>.</p>
<p>Some other useful login/sign-up resources i&#8217;ve found useful in the past are listed below.</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2008/07/04/web-form-design-patterns-sign-up-forms/">http://www.smashingmagazine.com/2008/07/04/web-form-design-patterns-sign-up-forms/</a></li>
<li><a href="http://www.hongkiat.com/blog/login-registration-form/">http://www.hongkiat.com/blog/login-registration-form/</a></li>
<li><a href="http://www.smashingmagazine.com/2009/06/23/10-ui-design-patterns-you-should-be-paying-attention-to/">http://www.smashingmagazine.com/2009/06/23/10-ui-design-patterns-you-should-be-paying-attention-to/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://underworldlabs.org/blog/sign-up-and-login-pages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Favicon Builder</title>
		<link>http://underworldlabs.org/blog/favicon-builder/</link>
		<comments>http://underworldlabs.org/blog/favicon-builder/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 00:20:28 +0000</pubDate>
		<dc:creator>Takis Diakoumis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://underworldlabs.org/?p=119</guid>
		<description><![CDATA[Recently fiddling with some favicon creation. I usually use The GIMP to do my image work including favicons but for whatever reason recently, one I...]]></description>
			<content:encoded><![CDATA[<p>Recently fiddling with some favicon creation. I usually use <a href="http://www.gimp.org/" target="_blank">The GIMP</a> to do my image work including favicons but for whatever reason recently, one I was working on just would not render in Firefox (&#8230;IE was fine &#8211; go figure).</p>
<p>In my subsequent travels i found <a href="﻿http://www.faviconbuilder.com" target="_blank">Favicon Builder</a>.  Simply upload a gif, jpg or png image and it generates a favicon that rendered perfectly. The generated download is a zip archive with a readme file, animated icon as a gif, favicon ico and a couple of scaled png files. Very nice <img src='http://underworldlabs.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://underworldlabs.org/blog/favicon-builder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The SEO Rapper</title>
		<link>http://underworldlabs.org/blog/the-seo-rapper/</link>
		<comments>http://underworldlabs.org/blog/the-seo-rapper/#comments</comments>
		<pubDate>Tue, 27 May 2008 08:45:55 +0000</pubDate>
		<dc:creator>Takis Diakoumis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://underworldlabs.org/?p=19</guid>
		<description><![CDATA[Came across a very cool video posted on http://tastyblogsnack.com/2008/03/27/the-seo-rapper/.]]></description>
			<content:encoded><![CDATA[<p>Came across a very cool video posted on <a href="http://tastyblogsnack.com/2008/03/27/the-seo-rapper/" target="_blank">http://tastyblogsnack.com/2008/03/27/the-seo-rapper/</a>.<br />
<br/><br />
<object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/a0qMe7Z3EYg&#038;hl=en"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/a0qMe7Z3EYg&#038;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://underworldlabs.org/blog/the-seo-rapper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Machine is Us/ing Us</title>
		<link>http://underworldlabs.org/blog/the-machine-is-using-us/</link>
		<comments>http://underworldlabs.org/blog/the-machine-is-using-us/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 10:18:28 +0000</pubDate>
		<dc:creator>Takis Diakoumis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[platform]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[web 2.0]]></category>

		<guid isPermaLink="false">http://underworldlabs.org/?p=14</guid>
		<description><![CDATA[Cool web 2.0 video]]></description>
			<content:encoded><![CDATA[<p>Cool web 2.0 video</p>
<p><object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/NLlGopyXT_g&#038;hl=en"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/NLlGopyXT_g&#038;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://underworldlabs.org/blog/the-machine-is-using-us/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fresh CSS templates</title>
		<link>http://underworldlabs.org/blog/fresh-css-templates/</link>
		<comments>http://underworldlabs.org/blog/fresh-css-templates/#comments</comments>
		<pubDate>Mon, 24 Mar 2008 08:43:18 +0000</pubDate>
		<dc:creator>Takis Diakoumis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[templates]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://underworldlabs.org/?p=11</guid>
		<description><![CDATA[I recently came across some rather cool and free css templates from TemplateFusion. I modified one of them slightly and now use it as the...]]></description>
			<content:encoded><![CDATA[<p>I recently came across some rather cool and free css templates from <a href="http://templatefusion.org/" target="_blank">TemplateFusion.</a></p>
<p>I modified one of them slightly and now use it as the new look for <a href="http://executequery.org" target="_blank">executequery.org</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://underworldlabs.org/blog/fresh-css-templates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

