Return-Path: Delivered-To: apmail-incubator-abdera-commits-archive@locus.apache.org Received: (qmail 1388 invoked from network); 30 Jan 2008 15:48:00 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 30 Jan 2008 15:48:00 -0000 Received: (qmail 39164 invoked by uid 500); 30 Jan 2008 15:47:51 -0000 Delivered-To: apmail-incubator-abdera-commits-archive@incubator.apache.org Received: (qmail 39150 invoked by uid 500); 30 Jan 2008 15:47:51 -0000 Mailing-List: contact abdera-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: abdera-dev@incubator.apache.org Delivered-To: mailing list abdera-commits@incubator.apache.org Received: (qmail 39141 invoked by uid 99); 30 Jan 2008 15:47:51 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 30 Jan 2008 07:47:51 -0800 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 30 Jan 2008 15:47:44 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id E8AFC1A9832; Wed, 30 Jan 2008 07:47:36 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r616793 - in /incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server: context/AbstractRequestContext.java servlet/ServletRequestContext.java Date: Wed, 30 Jan 2008 15:47:36 -0000 To: abdera-commits@incubator.apache.org From: jmsnell@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080130154736.E8AFC1A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jmsnell Date: Wed Jan 30 07:47:35 2008 New Revision: 616793 URL: http://svn.apache.org/viewvc?rev=616793&view=rev Log: Fix NPE reported by Remy Gendron Modified: incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/context/AbstractRequestContext.java incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java Modified: incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/context/AbstractRequestContext.java URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/context/AbstractRequestContext.java?rev=616793&r1=616792&r2=616793&view=diff ============================================================================== --- incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/context/AbstractRequestContext.java (original) +++ incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/context/AbstractRequestContext.java Wed Jan 30 07:47:35 2008 @@ -33,6 +33,8 @@ import org.apache.abdera.protocol.server.Provider; import org.apache.abdera.protocol.server.RequestContext; import org.apache.abdera.protocol.server.Target; +import org.apache.abdera.protocol.server.TargetType; +import org.apache.abdera.protocol.server.impl.AbstractTarget; import org.apache.abdera.protocol.util.AbstractRequest; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -61,6 +63,16 @@ this.method = method; this.baseUri = baseUri; this.requestUri = requestUri; + + } + + protected Target initTarget() { + try { + Target target = provider.resolveTarget(this); + return target != null ? target : new UnknownTarget(this); + } catch (Exception e) { + throw new RuntimeException(e); + } } public Abdera getAbdera() { @@ -169,4 +181,11 @@ return getResolvedUri().resolve( urlFor(key,param)).toString(); } + + public static class UnknownTarget + extends AbstractTarget { + public UnknownTarget(RequestContext context) { + super(TargetType.TYPE_UNKNOWN, context); + } + } } Modified: incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java URL: http://svn.apache.org/viewvc/incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java?rev=616793&r1=616792&r2=616793&view=diff ============================================================================== --- incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java (original) +++ incubator/abdera/java/trunk/server/src/main/java/org/apache/abdera/protocol/server/servlet/ServletRequestContext.java Wed Jan 30 07:47:35 2008 @@ -55,7 +55,7 @@ this.session = request.getSession(false); this.principal = request.getUserPrincipal(); this.subject = provider.resolveSubject(this); - this.target = provider.resolveTarget(this); + this.target = initTarget(); } public Object getProperty(Property property) {