How to use ResourceBundle

I have a piece of code which tries to read a property file like this:
ResourceBundle bundleHandle = ResourceBundle.getBundle("Example");
Here Example.properties is a file located in another directory which is dynamically constructed
during deployment. So I don't want to put it within the package.
My question is: Will the above code work? When running under debugger, this line always fails to
find the Example.properties even it is there?
Thanks you your help!

Here Example.properties is a file located in another directory which is dynamically constructed The following should provide some examples.
     // Method: demonstratePropertyAbsolute()
     * Demonstrates how a property file is used via absolute naming
     * Because the file name starts with a forward slash this
     * will use an absolute path (in the context of the java application)
     private static final
          String MAIN_FILE_ABS = "/BlueGnome/demos/Properties/DemoPropertiesFile.properties";
     static void demonstratePropertyAbsolute() throws Exception
          aProperties = new Properties();
          // Demonstrate what the name is
          // Notice that we use the Properties for the the class
          // reference.  It does not matter what class we use.
          java.net.URL url = Properties.class.getResource(MAIN_FILE_ABS);
          System.out.println("Absolute: resolved name = " + url);
          // Get a stream so we can read it.
          java.io.InputStream is;
          is = Properties.class.getResourceAsStream(MAIN_FILE_ABS);
          if (is == null)
               throw new Exception("Resource File "
                    + MAIN_FILE_ABS + " not found.");
          // Load the stream
          aProperties.load(is);
          System.out.println("  This is a value from the properties file"
                         + " name = <"
                         + aProperties.getProperty("a.value")
                         + ">");
     // Method: demonstratePropertyPath()
     * Demonstrates how a property file is used via path
     * The file name is basically a system file path (unlike the previous two)
     private static final
          String MAIN_FILE_PATH = "./BlueGnome/demos/Properties/DemoPropertiesFile.properties";
     static void demonstratePropertyPath() throws Exception
          aProperties = new Properties();
          // Demonstrate what the name is
          java.net.URL url = ClassLoader.getSystemClassLoader().getResource(MAIN_FILE_PATH);
          System.out.println("PATH: resolved name = " + url);
          // Get the file.
          // We could just use FileInputStream here.  Then we would have
          // to provide a path that was meaningful to the system like
          //     c:\java\BlueGnome\demos\Properties\DemoPropertiesFile.properties
          // Doing it this way allows us to use generic directory
          // seperators and allows for it to search for the file using
          // the CLASSPATH.  That also allows for it to be in a jar file.
          java.io.InputStream is;
          is = ClassLoader.getSystemClassLoader().getResourceAsStream(MAIN_FILE_PATH);
          if (is == null)
               throw new Exception("Resource File "
                    + MAIN_FILE_PATH + " not found.");
          aProperties.load(is);
          System.out.println("  This is a value from the properties file"
                         + " name = <"
                         + aProperties.getProperty("a.value")
                         + ">");
     }

Similar Messages

  • How to use resourceBundle in Catalog Definition

    hi all,
    I am using wc11g, I need to use resourceBundle to display different title for different languages, according to the following doc:
    The name of the resource bundle to be used for obtaining translated attribute values, where <attribute.... isKey="true"/>. The resourceBundle attribute can also be used at lower levels in the document, such as on individual attributes elements. Refer to the XSD for further details.
    I defined resourceBundle in the following element level in DefaultGroupSpaceCatalog.xml,
    catalogDefinition,attributes,attribute, definition like this:
    <resource id="task-flow-definition_hotNews"
    repository="application.classpath"
    path="adflibWcSvcApp.jar/ADF_TaskFlow/WEB-INF+task-flow-definition_content.xml#task-flow-definition_hotNews">
    <attributes resourceBundle="com.uaes.portal.service.resource.UaesServiceBundle">
    <attribute value="TITLE.HOTNEWS" attributeId="Title" isKey="true" resourceBundle="com.uaes.portal.service.resource.UaesServiceBundle"/>
    <attribute value="DESC.HOTNEWS" attributeId="Description" isKey="true" resourceBundle="com.uaes.portal.service.resource.UaesServiceBundle"/>
    <attribute value="key" attributeId="Subject" isKey="false"/>
    <attribute value="hotnews" attributeId="WEBCENTER_SERVICE_ID" isKey="false"/>
    <attribute value="/adf/webcenter/events_qualifier.png" attributeId="IconURI"/>
    <attribute value="height:331px" attributeId="attr.contentStyle" isKey="false"/>
    </attributes>
    </resource>
    While what ever UaesServiceBundle_xx_xx.properties I put, catlalog composer does not recognize the title, just showed "TITLE.HOTNEWS".
    Noticed that a XTRS file should be used to generate .class, but how to do it?
    Best regards

    Wow, had hoped to get something!
    Anyway, what I ended up doing was to bundle the xsd/wsdl/generated java bindings into a jar that I included in the web server. Not the ideal solution when need to share between other services. However, no success any other way!

  • Using ResourceBundle class

    Hi
    How to use ResourceBundle class for fetching data from properties file.
    Thanks & Regards
    Mallik

    it is explained in the java tutorial, here 's the url :
    http://java.sun.com/docs/books/tutorial/i18n/resbundle/propfile.html

  • How to use properties file

    Hi,
    I want to use properties file in my application. I have kept properties file inside a directory called properties which is inside myProject(which is the parent directory of my project) i.e "myProject/properties".
    My java file where i want to call this properties file is inside the myProject/WEB-INF/src/java.
    How can i call the properties file from myProject/WEB-INF/src/java/PropertyReader.java
    I wrote java program in myProject/WEB-INF/src/java/PropertyReader.java like:::::
    ResourceBundle resBun = ResourceBundle.getBundle("Test", Locale.getDefault()); // Test.properties is inside myProject/properties
    resBun..getString("name");
    After running the program i am getting the following errors:::::
    Exception in thread "main" java.util.MissingResourceException: Can't find bundle for base name Test, locale en_US
    at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:836)
    at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:805)
    at java.util.ResourceBundle.getBundle(ResourceBundle.java:576)
    at PropertiesReader.main(PropertiesReader.java:4)
    What is the issue? How to use properties file?
    Waiting for reply.
    Thanks

    Still getting same exception. As you explained i tried like the below:::
    1. I am using ant as build tool.
    2. My properties file is for database configuration
    My properties file is::
    database.properties (inside myProject/properties)
    JDBCDriver=org.gjt.mm.mysql.Driver
    JDBCConnectionURL=jdbc:mysql://pmdbmysql:3306/bandwidthshaper?user=admin&password=admin
    My java package structure is
    WEB-INF/src/java
    WEB-INF/src/classes
    For build WEB-INF is the base directory and build.xml is inside the src directory
    In my build.xml i wrote the following lines for compilation::
              <target name="compile" >
                   <javac srcdir="src" destdir="src/classes" debug="true" debuglevel="lines,vars,source">
                        <classpath refid="class.path"/>
                   </javac>
    <copy todir = "src/classes" >
    <fileset dir = "../properties" />
    </copy>
                   <jar jarfile="lib/${project.jar.file}" basedir="src/classes"/>
              </target>
    I am copying properties file to the classes directory.
    Now in java file which is inside /WEB-INF/src/java, I wrote::
    try {
    Properties programProps = new Properties();
    InputStream is = getClass().getResourceAsStream("/database.properties");
    if(is == null)
    throw new IllegalStateException("Properties file missing ");
    programProps.load(is);
    System.out.println("driver name::::::: "+programProps.getProperty("JDBCDriver"));
    is.close();
    } catch(Exception e) {
    e.printStackTrace();
    After compilation in my classes directory i am getting database.properties file and my java file with package.
    At the time of running i am getting "java.lang.IllegalStateException: Properties file missing"
    Now tell me where is the fault. Why again i am getting exception.
    Thanks

  • How to use I18N with a custom validator?

    This is my custom validator:
        public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException
            Pattern pat=Pattern.compile(".+@.+\\.[a-z]+");
            Matcher m= pat.matcher(value.toString());
            if(!m.find())
                FacesMessage message = new FacesMessage("Not a valid e-mail address");
                throw new ValidatorException(message);
        }Instead of providing the text "Not a valid e-mai address", I'd like to get the text out of my ApplicationResources property file.
    How can I do this?
    I know how to use it with the provided validators, but not with own custom ones
    Please help me out, thanks

    I found a solution for this problem, I don't know it's best practice but here it is :
        public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException
            String errortext;
            Pattern pat=Pattern.compile(".+@.+\\.[a-z]+");
            Matcher m= pat.matcher(value.toString());
            if(!m.find())
                ResourceBundle bundle =
                ResourceBundle.getBundle("be.vdab.resources.ApplicationResources", context.getViewRoot().getLocale());
                errortext = bundle.getString("erroremail");
                FacesMessage message = new FacesMessage(errortext);
                throw new ValidatorException(message);
        }

  • How to use a config file?

    People,
    i have a basic question. How to extract the contents from a ".config" file?
    I have a config file with few sections and few global variables defined.
    how to extract these data; or how to use this file?
    a sample .config file, that i have is,
    # global variables
    pageTitle = "Main Menu"
    bodyBgColor = #000000
    tableBgColor = #000000
    rowBgColor = #00ff00
    [Customer]
    pageTitle = "Customer Info"
    [Login]
    pageTitle = "Login"
    focus = "username"
    Intro = """This is a value that spans more
    than one line. you must enclose
                   it in triple quotes."""
    # hidden section
    [.Database]
    host=my.domain.com
    db=ADDRESSBOOK
    user=php-user
    pass=foobar
    How would i extract these data; or how to utilize this file first of all?
    - Kumar
    [ [email protected] ]

    Hi Kumar,
    Instead of .config file you can use .properties file. Place the configuration part in that file. Use ResourceBundle class. This class have methods like getResourceString(String key) which reads the .properties file and returns a String as it's Value. I normally use the same. I have written one class for it. C if you can use it. The keys are case sensitive. initialize is a directory in which i am keeping my Config.properties file.
    import java.util.*;
    import java.text.*;
    import java.net.*;
    import javax.swing.*;
    public class ReadConfig
    public static ResourceBundle resources;
    * This is responsible for getting data from Config.properties for setting properties externally.
    static
    try
    resources = ResourceBundle.getBundle("initialize.Config", Locale.getDefault());
    catch (MissingResourceException mre)
    JOptionPane.showMessageDialog(new JFrame(), "initialize/Config.properties not found.\n Please report it to administrator.");
    System.err.println("initialize/Config.properties not found");
    System.exit(1);
    }//static
    public ReadConfig()
    System.out.println(getResourceString("DatabaseName"));
    System.out.println(getResourceString("JDBCDriver"));
    System.out.println(getResourceString("DSN"));
    System.out.println(getResourceString("ConnectionString"));
    }//constructor
    public String[] tokenize(String input)
    Vector v = new Vector();
    StringTokenizer t = new StringTokenizer(input);
    String cmd[];
    while (t.hasMoreTokens())
    v.addElement(t.nextToken());
    cmd = new String[v.size()];
    for (int i = 0; i < cmd.length; i++)
    cmd[i] = (String) v.elementAt(i);
    return cmd;
    * A method takes string as parameter and reference of ResourceBundle.
    * It is used with <b>Resources Bundle</b> i.e. with .properties file.
    * When value of particular string from .properties file has to retrive.
    public String getResourceString(String nm, ResourceBundle resources)
    String str;
    try
    str = resources.getString(nm);
    catch (MissingResourceException mre)
    str = null;
    return str;
    * A method takes string as parameter. It is used with <b>Resources Bundle
    * </b> i.e. with .properties file. When value of particular string from .properties
    * file has to retrive.
    public static String getResourceString(String nm)
    String str;
    try
    str = resources.getString(nm.trim());
    catch (MissingResourceException mre)
    str = null;
    return str;
    }//getResourceString(String nm)
    * This method takes string as parameter and returns corresponding <b>URL</b>.
    * If key is <b>null</b>, then will return <b>null</b>.
    public URL getResource(String key)
    String name = getResourceString(key);
    if (name != null)
    URL url = this.getClass().getResource(name);
    return url;
         return null;
    }//getResource(String key)
    public static void main(String[] args)
    new ReadConfig();
    }//main
    }//class
    Hope this will be helpful to you.
    Kind Regards
    Sandeep

  • How to use the One-to-One mapping in Java Code

    Dear all:
    I have set the direct mapping and named query,
    and have written web service of login.
    I can login successfully.
    Now,I want learning about One-to-One mapping.
    I have setting the One-to-One mapping,
    then what can I do latter?
    I do not found any paper showing how to use it in web service?
    Somebody help me?thx all.

    Following code worked for me:
    import oracle.javatools.resourcebundle.BundleFactory;
    import java.util.ResourceBundle;
    * This method retrieves localized strings from a given XLIF resource bundle.
    * @param bundleName The XLIF bundle from which the localized string is to be retrieved.
    * @param key The key of the localized string.
    * @return The localized string retrieved from the given XLIF bundle.
    public static String getXlifLocalizedString(String bundleName, String key) {
    if (StringUtils.isEmpty(key)) {
    return key;
    if (StringUtils.isEmpty(bundleName)) {
    return "[" + key + "]";
    String localizedString = null;
    ResourceBundle resourceBundle = null;
    try {
    resourceBundle = BundleFactory.getBundle(bundleName);
    localizedString = resourceBundle.getString(key);
    } catch (Exception e) {
    LOG.log(Level.SEVERE, "Problem in loading XLIF resource bundle: " + bundleName, e);
    return "[" + key + "]";
    return localizedString;
    }

  • How to use XLIFF file as resource bundle in Java code

    We use xliff as resource bundle for our ADF application. it is has been no problem to have localized message displayed on UI. how ever, I'm wonderring how to use Java code to access xliff as resource bundle which similar to access properties resource bundle. for example:
    Locale myLocale = new Locale("es", "ES");
    ResourceBundle bundle = ResourceBundle.getBundle("HelloResourceBundle", myLocale);
    System.out.println(bundle.getString("Hello"));is it posible to create "HelloResourceBundle" in xliff format?
    Thanks

    Following code worked for me:
    import oracle.javatools.resourcebundle.BundleFactory;
    import java.util.ResourceBundle;
    * This method retrieves localized strings from a given XLIF resource bundle.
    * @param bundleName The XLIF bundle from which the localized string is to be retrieved.
    * @param key The key of the localized string.
    * @return The localized string retrieved from the given XLIF bundle.
    public static String getXlifLocalizedString(String bundleName, String key) {
    if (StringUtils.isEmpty(key)) {
    return key;
    if (StringUtils.isEmpty(bundleName)) {
    return "[" + key + "]";
    String localizedString = null;
    ResourceBundle resourceBundle = null;
    try {
    resourceBundle = BundleFactory.getBundle(bundleName);
    localizedString = resourceBundle.getString(key);
    } catch (Exception e) {
    LOG.log(Level.SEVERE, "Problem in loading XLIF resource bundle: " + bundleName, e);
    return "[" + key + "]";
    return localizedString;
    }

  • How to use one email adress for multiple recipients

    Hello,
    I'd like to know how to use one email adress for multiple recipients. 
    this would be very useful or projects. for example;
    if i send one mail to [email protected], all people in this project get an email.
    I will add the people in this project myself. 
    I know it is possible, but I don't know how to do it ;-)
    please help me! 

    Hope this help.
    _http://technet.microsoft.com/en-us/library/cc164331(v=exchg.65) .aspx

  • Can't figure out how to use home sharing

    Since the latest couple iTunes updates, my family and I can not figure out how to use home sharing. Everyone in our household has their own iTunes, and for a long time we would just share our music through home sharing. But with the updates, so much has changed that we can no longer figure out how to use it.
    I have a lot of purchased albums on another laptop in the house, that im trying to move it all over to my own iTunes, and I have spent a long time searching the internet, and everything. And I just can't figure out how to do it. So.... how does it work now? I would really like to get these albums from my moms iTunes, onto mine. I would hate to have to buy them all over again.
    If anyone is able to help me out here, that would be great! Thanks!

    The problem im having is that after I am in another library through home sharing, I can't figure out how to select an album and import it to my library. They used to have it set up so that you just highlight all of the songs you want, and then all you had to do was click import. Now I don't even see an import button, or anything else like it. So im lost... I don't know if it's something im doing wrong, or if our home sharing system just isn't working properly.
    Thanks for the help.

  • How to use the same POWL query for multiple users

    Hello,
    I have defined a POWL query which executes properly. But if I map the same POWL query to 2 portal users and the 2 portal users try to access the same page simultaneously then it gives an error message to one of the users that
    "Query 'ABC' is already open in another session."
    where 'ABC' is the query name.
    Can you please tell me how to use the same POWL query for multiple users ?
    A fast reply would be highly appreciated.
    Thanks and Regards,
    Sandhya

    Batch processing usually involves using actions you have recorded.  In Action you can insert Path that can be used during processing documents.  Path have some size so you may want to only process document that have the same size.  Look in the Actions Palette fly-out menu for insert path.  It inserts|records the current document work path into the action being worked on and when the action is played it inserts the path into the document as the current work path..

  • How to use airport time capsule with multiple computers?

    I'm sure there are some thread about this but i couldn't find it... so sorry for that but hear me out! =)
    I bought the AirPort Time Capsule to back up my MBP
    And so i did.
    then i thought "let give this one a fresh start" so i erased all of it with the disk utility and re-installed the MBP from the recovery disk.
    I dont want all of the stuff i backed up just a few files and some pictures so i brought that back.. so far so good.
    Now i want to do a new back up of my MBP so i open time machine settings, pick the drive on the time capsule and then "Choose" i wait for the beck up to begin, and then it fails.  It says (sorry for my bad english, im swedish haha) "the mount /Volume/Data-1/StiflersMBP.sparsebundle is already in use for back up.
    this is what i want:
    i want the "StiflersMBP.sparsebundle" to just be so i can get some stuf when i need them. it's never to be erased.
    i want to make a new back up of my MBP as if it's a second computer...
    so guys and girls, what is the easiest and best solution?
    Best regards!

    TM does not work like that.
    If you want files to use later.. do not use TM.
    Or do not use TM to the same location. Plug a USB drive into the computer and use that as the target for the permanent backup.
    Read some details of how TM works so you understand what it will do.
    http://pondini.org/TM/Works.html
    Use a clone or different software for a permanent backup.
    http://pondini.org/TM/Clones.html
    How to use TC
    http://pondini.org/TM/Time_Capsule.html
    This is helpful.. particularly Q3.
    Why you don't want to use TM.
    Q20 here. http://pondini.org/TM/FAQ.html

  • How to use multiple ipods on one account

    I have an Ipod classic and just bought my sons two nano's how do I use these on the same account without changing my account info?

    Take a look here:
    How to use multiple iPods with one computer
    Forum Tip: Since you're new here, you've probably not discovered the Search feature available on every Discussions page, but next time, it might save you time (and everyone else from having to answer the same question multiple times) if you search a couple of ways for a topic, both in the relevant forums, in the User Tips Library and in the Apple Knowledge Base before you post a question.
    Regards.

  • How to use a Table View in AppleScriptObjC

    How can I use a table view and add data to it? And how can I display a button cell and image cell in the table? Thanks.

    Hi all,
    Actually i need some more clarification. How to use the same select statement, if i've to use the tabname in the where clause too?
    for ex : select * from (tab_name) where....?
    Can we do inner join on such select statements? If so how?
    Thanks & Regards,
    Mallik.

  • How to use '|' delimited as seprator in GUI_DOWNLOAD ? Plz suggest me ,,

    how to use '|' delimited as seprator in GUI_DOWNLOAD ? Plz suggest me ,,
    i want the output should be seprated by '|' delimited when i download the file.

    Hi,
    We will pass the seperator to the WRITE_FIELD_SEPARATOR parameter as
    CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
    filename = v_file
    write_field_separator = '|'
    TABLES
    data_tab = itab[] . "Our internal talbe filled with data
    Re: Why Function GUI_DOWNLOAD can create XML file but not a flat file?
    Award points if useful
    Thanks,
    Ravee...

Maybe you are looking for

  • Shared library extended class Error #1065: Variable is not defined

    Right, bit of a complicated set-up  here. I've got a class structure which includes the View class: com.website.buttons.MyButton Then i've got a shared library swc called sharedassets.swc  that contains a MovieClip in the library that uses  'com.webs

  • Issue with sequence.currval in INSERT ALL...

    Hi Gurus, I am having an issue with using sequence.currval in INSERT ALL with WHEN clause.Please check following example Let say I have 4 tables 1) SOURCE_PARENT PARENT_ID ======== 10 20 2) SOURCE_CHILD PARENT_ID CHILD_ID ========= ======== 10     1

  • SAP output in Thai Language

    Hi All, we are facing a very strange issue with SAP output in Thai Language for only customer address. We have hardcoded language for the customer address to be in thai. While in preview we can see the customer address in thai language but when we pr

  • ITunes store and vista?

    well i have windows vista, you see? and i've been trying to download podcasts for ipod but it isnt working, it tries to download for not even a second and then a little orange excalmation point shows up next to it. what should i do to solve this prob

  • Can't find content in ATV and no more space

    All my content on ATV has disappeared but there is only about 500mb of space left to download things. How do I get my stuff back or clear up space?