Scarab commit: svn commit: r10322 - branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java

[email protected]
Newsgroups gmane.comp.java.scarab.cvs
Message-ID <[email protected]>
Author: dabbous
Date: 2006-11-04 12:16:17-0800
New Revision: 10322

Modified:
   branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java

Log:
avoid npe when feedType not given in RSSFeed.

I basically do NOT know how the code should work

properly. I just try to avoid an uncaught NPE!!

The author should definitely review this class!

Modified: branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java
Url: http://scarab.tigris.org/source/browse/scarab/branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java?view=diff&rev=10322&p1=branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java&p2=branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java&r1=10321&r2=10322
==============================================================================
--- branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java	(original)
+++ branches/release/b21/src/java/org/tigris/scarab/screens/RSSDataExport.java	2006-11-04 12:16:17-0800
@@ -80,7 +80,9 @@
 public class RSSDataExport extends TemplateScreen {
 	public static final String DEFAULT_FEED_FORMAT = "atom_0.3";
 
-	private static final String MIME_TYPE = "application/xml; charset=UTF-8";
+    private static final String MIME_TYPE = "application/xml; charset=UTF-8";
+
+    private static final String COULD_NOT_FIND_FEED_TYPE   = "Parser did not find a valid feedType";
 
 	private static final String COULD_NOT_GENERATE_FEED_ERROR = "Could not generate feed";
 
@@ -116,6 +118,14 @@
 
 
             String feedType = parser.getString(FEED_TYPE_KEY);
+            if(feedType == null)
+            {
+                String msg = COULD_NOT_FIND_FEED_TYPE;
+                Log.get().error(msg);
+                data.getResponse().sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,msg);            
+                return;
+            }
+
             String feedFormat = parser.getString(FEED_FORMAT_KEY);
 
             ScarabLink scarabLink= getScarabLinkTool(context);
@@ -163,6 +173,7 @@
             data.getResponse().sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,msg);
         }      		
 	}
+
 	
     /**
      * Helper method to retrieve the ScarabLocalizationTool from the Context
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.