<?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>Uproar Blog &#187; java</title>
	<atom:link href="http://blog.weareuproar.com/tag/java/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.weareuproar.com</link>
	<description>Crafting convenient mobile apps for your life.</description>
	<lastBuildDate>Thu, 02 Sep 2010 11:26:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Google App Engine on Google Apps Domains</title>
		<link>http://blog.weareuproar.com/google-app-engine-on-google-apps-domains</link>
		<comments>http://blog.weareuproar.com/google-app-engine-on-google-apps-domains#comments</comments>
		<pubDate>Mon, 27 Jul 2009 13:08:09 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[google app engine]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[app engine]]></category>

		<guid isPermaLink="false">http://blog.weareuproar.com/?p=268</guid>
		<description><![CDATA[At Uproar, Objective-C isn&#8217;t the only thing I do.  Recently, I&#8217;ve been hacking away on a Java Google App Engine project (more on this later&#8230;).  After deploying the app, the following exception was thrown upon hitting my app&#8217;s URL: Uncaught exception from servlet java.lang.ClassCastException: java.lang.IllegalArgumentException cannot be cast to javax.servlet.ServletException at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:754) at org.apache.jsp.xxxxxxxx_jsp._jspService(xxxxxxxx_jsp.java:107) at [...]]]></description>
			<content:encoded><![CDATA[<p>At Uproar, Objective-C isn&#8217;t the only thing I do.  Recently, I&#8217;ve been hacking away on a Java Google App Engine project (more on this later&#8230;).  After deploying the app, the following exception was thrown upon hitting my app&#8217;s URL:</p>
<pre style="white-space: pre-wrap; word-wrap: break-word; padding-top: 0.3em; padding-right: 0px; padding-bottom: 0.5em; padding-left: 1.5em; font-family: 'Courier New'; margin: 0px;">Uncaught exception from servlet
java.lang.ClassCastException: java.lang.IllegalArgumentException cannot be cast to javax.servlet.ServletException
	at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:754)
	at org.apache.jsp.xxxxxxxx_jsp._jspService(xxxxxxxx_jsp.java:107)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
	&lt;snip /&gt;
	at java.lang.Thread.run(Unknown Source)</pre>
<p>This was confusing as my app worked fine when running locally.  Some googling uncovered this <a href="http://code.google.com/p/googleappengine/issues/detail?id=1438">Google App Engine issue</a>.  If a RuntimeException is thrown in your jsp, Apache Jasper attempts to cast it to a ServletException (which it is unable to do on app engine).  However, this is really just masking the real issue which for me was found when I read <a href="http://code.google.com/p/googleappengine/issues/detail?id=1438#c8">comment #8</a> in the issue:</p>
<pre style="white-space: pre-wrap; word-wrap: break-word; padding-top: 0.3em; padding-right: 0px; padding-bottom: 0.5em; padding-left: 1.5em; font-family: 'Courier New'; margin: 0px;">I needed to add Google App Engine as a service on my domain's Google Apps page, and add Guestbook as an app.</pre>
<p>This caught my eye because my app was configured to run under my own Google Apps domain (upon creating an app, you have to specify whether it will authenticate against Google&#8217;s appspot.com or your own Google Apps domain).  After <a href="http://code.google.com/appengine/articles/auth.html">enabling the app service under my domain</a>, all is well and my deployed app engine service now works as expected.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.weareuproar.com/google-app-engine-on-google-apps-domains/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
