1 11 package org.jboss.portal.test.portlet.portletconfig; 12 13 import org.jboss.portal.junit.result.InvokeURLResult; 14 import org.jboss.portal.junit.result.AssertResult; 15 import org.jboss.portal.junit.Result; 16 import org.jboss.portal.test.portlet.AbstractPortlet; 17 18 import javax.portlet.ActionRequest; 19 import javax.portlet.ActionResponse; 20 import javax.portlet.PortletException; 21 import javax.portlet.PortletSecurityException; 22 import javax.portlet.RenderRequest; 23 import javax.portlet.RenderResponse; 24 import javax.portlet.PortletURL; 25 import javax.portlet.PortletPreferences; 26 import javax.portlet.PortletConfig; 27 import java.io.IOException ; 28 import java.util.Map ; 29 import java.util.Locale ; 30 import java.util.ResourceBundle ; 31 import java.util.MissingResourceException ; 32 33 37 public class ResourceBundleCascadePortlet extends AbstractPortlet 38 { 39 40 public void render(final RenderRequest request, RenderResponse response) throws PortletException, PortletSecurityException, IOException 41 { 42 AssertResult result = new AssertResult(); 43 result.execute(new AssertResult.Test() 44 { 45 public void run() throws Exception 46 { 47 PortletConfig cfg = getPortletConfig(); 48 49 ResourceBundle bundle_en = cfg.getResourceBundle(Locale.ENGLISH); 50 ResourceBundle bundle_de = cfg.getResourceBundle(Locale.GERMAN); 51 ResourceBundle bundle_zz = cfg.getResourceBundle(new Locale ("zz")); 52 ResourceBundle bundle_fr = cfg.getResourceBundle(Locale.FRENCH); 53 ResourceBundle bundle_fr_FR = cfg.getResourceBundle(Locale.FRANCE); 54 ResourceBundle bundle_fr_FR_aa = cfg.getResourceBundle(new Locale (Locale.FRANCE.getLanguage(), Locale.FRANCE.getCountry(), "aa")); 55 56 assertEquals(Locale.ENGLISH, bundle_en.getLocale()); 57 assertEquals(Locale.ENGLISH, bundle_de.getLocale()); 58 assertEquals(Locale.ENGLISH, bundle_zz.getLocale()); 59 assertEquals(Locale.FRENCH, bundle_fr.getLocale()); 60 assertEquals(Locale.FRANCE, bundle_fr_FR.getLocale()); 61 assertEquals(Locale.FRANCE, bundle_fr_FR_aa.getLocale()); 62 63 assertEquals("title", bundle_en.getString("javax.portlet.title")); 64 assertEquals("title", bundle_de.getString("javax.portlet.title")); 65 assertEquals("title", bundle_zz.getString("javax.portlet.title")); 66 assertEquals("title", bundle_fr.getString("javax.portlet.title")); 67 assertEquals("title", bundle_fr_FR.getString("javax.portlet.title")); 68 assertEquals("title", bundle_fr_FR_aa.getString("javax.portlet.title")); 69 70 assertEquals("short-title_en", bundle_en.getString("javax.portlet.short-title")); 71 assertEquals("short-title_en", bundle_de.getString("javax.portlet.short-title")); 72 assertEquals("short-title_en", bundle_zz.getString("javax.portlet.short-title")); 73 assertEquals("short-title_fr", bundle_fr.getString("javax.portlet.short-title")); 74 assertEquals("short-title_fr", bundle_fr_FR.getString("javax.portlet.short-title")); 75 assertEquals("short-title_fr", bundle_fr_FR_aa.getString("javax.portlet.short-title")); 76 77 assertEquals("description_en", bundle_en.getString("javax.portlet.description")); 78 assertEquals("description_en", bundle_de.getString("javax.portlet.description")); 79 assertEquals("description_en", bundle_zz.getString("javax.portlet.description")); 80 assertEquals("description_fr", bundle_fr.getString("javax.portlet.description")); 81 assertEquals("description_fr_FR", bundle_fr_FR.getString("javax.portlet.description")); 82 assertEquals("description_fr_FR", bundle_fr_FR_aa.getString("javax.portlet.description")); 83 84 assertThrowsMissingResourceException(bundle_en); 85 assertThrowsMissingResourceException(bundle_de); 86 assertThrowsMissingResourceException(bundle_zz); 87 assertThrowsMissingResourceException(bundle_fr); 88 assertThrowsMissingResourceException(bundle_fr_FR); 89 assertThrowsMissingResourceException(bundle_fr_FR_aa); 90 } 91 private void assertThrowsMissingResourceException(ResourceBundle bundle) 92 { 93 try 94 { 95 bundle.getString("javax.portlet.keywords"); 96 fail(); 97 } 98 catch (MissingResourceException expected) 99 { 100 } 101 } 102 }); 103 104 sendResult(response, result); 106 } 107 } 108 | Popular Tags |