How to get the ServletContext when writing a class

Morning,
I've got a project using al least 4 jsp documents that try to manipulate a mysql database
To access the database and get a connection, i've put this syntax at the start of each document
<%! Connection con; %>
<%     
String url =  (String)application.getInitParameter("databaseUrl");
               String username = application.getInitParameter("username");
               String password = application.getInitParameter("password");
               Class.forName("com.mysql.jdbc.Driver").newInstance();
           con = DriverManager.getConnection(url, username, password);
               %>Those documents also use classes that I create, what I want to do is keep the code I've written above in one place instead of 4 different places, Is there a way I can use the application variable, which belongs to ServletContext in a class (not a servlet)
Message was edited by:
Octavian

This syntax reference JSP 2.0 : http://java.sun.com/products/jsp/syntax/2.0/syntaxref20.html
covers JSP actions such as jsp:useBean , jsp:getProperty and jsp:setProperty.
The API for JSTL is pretty intuitive:
http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/index.html
But if you need more details on a particular JSTL tag you can refer to the JSTL 1.1 Specification - it's a PDF document.
JSTL also uses EL (Expression Language) which is also covered by the JSTL specification and by the above JSP 2.0 syntax reference.
There are many JSTL tutorials and articles too, but most of them are old so they contain JSTL 1.0 code.
To get yourself started you need jstl.jar and standard.jar which come with the latest JSTL 1.1 distribution found here:
http://jakarta.apache.org/taglibs/doc/standard-doc/intro.html
Standard-1.1 (JSTL 1.1) requires a JSP container that supports the Java Servlet 2.4 and JavaServer Pages 2.0 specifications. Jakarta Tomcat 5 supports the new specifications. The Standard-1.1 taglib has been tested with Tomcat 5.0.3.
After you have set up your environment you can test it with a small sample of JSTL code like this:
inside sample.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="someVariable" value="Hello World!"/>
<c:out value="${someVariable}/>
null

Similar Messages

  • How to get the path when i select a directory or a file in a JTree

    How to get the path when i select a directory or a file in a JTree

    import java.lang.*;
    import java.io.*;
    import javax.swing.*;
    import javax.swing.tree.*;
    import java.awt.HeadlessException;
    import javax.swing.event.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.Iterator;
    * @author Frederic FOURGEOT
    * @version 1.0
    public class JTreeFolder extends JPanel {
    protected DefaultMutableTreeNode racine;
    JTree tree;
    protected JScrollPane scrollpane;
    final static int MAX_LEVEL = 1; // niveau max de descente "direct" dans l'arborescence
    * Sous-classe FSNode
    * @author Frederic FOURGEOT
    * @version 1.0
    private class FSNode extends DefaultMutableTreeNode {
    File file; // contient le fichier li� au noeud
    * Constructeur non visible
    private FSNode() {
    super();
    * Constructeur par initialisation
    * @param userObject Object
    FSNode(Object userObject) {
    super(userObject);
    * Constructeur par initialisation
    * @param userObject Object
    * @param newFile File
    FSNode(Object userObject, File newFile) {
    super(userObject);
    file = newFile;
    * Definit le fichier lie au noeud
    * @param newFile File
    public void setFile(File newFile) {
    file = newFile;
    * Renvoi le fichier lie au noeud
    * @return File
    public File getFile() {
    return file;
    public JTree getJTree(){
         return tree ;
    * Constructeur
    * @throws HeadlessException
    public JTreeFolder() throws HeadlessException {
    File[] drive;
    tree = new JTree();
    // cr�ation du noeud sup�rieur
    racine = new DefaultMutableTreeNode("Poste de travail");
    // cr�ation d'un noeud pour chaque lecteur
    drive = File.listRoots();
    for (int i = 0 ; i < drive.length ; i++) {
    FSNode node = new FSNode(drive, drive[i]);
    addFolder(drive[i], node); // on descend dans l'arborescence du lecteur jusqu'� MAX_LEVEL
    racine.add(node);
    // Gestion d'evenement sur JTree (on �coute les evenements TreeExpansion)
    tree.addTreeExpansionListener(new TreeExpansionListener() {
    public void treeExpanded(TreeExpansionEvent e) {
    // lorsqu'un noeud est ouvert
    // on descend dans l'arborescence du noeud jusqu'� MAX_LEVEL
    TreePath path = e.getPath();
    FSNode node = (FSNode)path.getLastPathComponent();
    addFolder(node);
    ((DefaultTreeModel)tree.getModel()).reload(node); // on recharche uniquement le noeud
    public void treeCollapsed(TreeExpansionEvent e) {
    // lorsqu'un noeud est referm�
    //RIEN
    // alimentation du JTree
    DefaultTreeModel model = new DefaultTreeModel(racine);
    tree.setModel(model);
         setLayout(null);
    // ajout du JTree au formulaire
    tree.setBounds(0, 0, 240, 290);
    scrollpane = new JScrollPane(tree);
         add(scrollpane);
         scrollpane.setBounds(0, 0, 240, 290);
    * Recuperation des sous-elements d'un repertoire
    * @param driveOrDir
    * @param node
    public void addFolder(File driveOrDir, DefaultMutableTreeNode node) {
    setCursor(new Cursor(3)); // WAIT_CURSOR est DEPRECATED
    addFolder(driveOrDir, node, 0);
    setCursor(new Cursor(0)); // DEFAULT_CURSOR est DEPRECATED
    * Recuperation des sous-elements d'un repertoire
    * (avec niveau pour r�cursivit� et arr�t sur MAX_LEVEL)
    * @param driveOrDir File
    * @param node DefaultMutableTreeNode
    * @param level int
    private void addFolder(File driveOrDir, DefaultMutableTreeNode node, int level) {
    File[] fileList;
    fileList = driveOrDir.listFiles();
    if (fileList != null) {
    sortFiles(fileList); // on tri les elements
    // on ne cherche pas plus loin que le niveau maximal d�finit
    if (level > MAX_LEVEL - 1) {return;}
    // pour chaque �l�ment
    try {
    for (int i = 0; i < fileList.length; i++) {
    // en fonction du type d'�l�ment
    if (fileList[i].isDirectory()) {
    // si c'est un r�pertoire on cr�� un nouveau noeud
    FSNode dir = new FSNode(fileList[i].getName(), fileList[i]);
    node.add(dir);
    // on recherche les �l�ments (r�cursivit�)
    addFolder(fileList[i], dir, ++level);
    if (fileList[i].isFile()) {
    // si c'est un fichier on ajoute l'�l�ment au noeud
    node.add(new FSNode(fileList[i].getName(), fileList[i]));
    catch (NullPointerException e) {
    // rien
    * Recuperation des sous-elements d'un noeud
    * @param node
    public void addFolder(FSNode node) {
    setCursor(new Cursor(3)); // WAIT_CURSOR est DEPRECATED
    for (int i = 0 ; i < node.getChildCount() ; i++) {
    addFolder(((FSNode)node.getChildAt(i)).getFile(), (FSNode)node.getChildAt(i));
    setCursor(new Cursor(0)); // DEFAULT_CURSOR est DEPRECATED
    * Tri une liste de fichier
    * @param listFile
    public void sortFiles(File[] listFile) {
    triRapide(listFile, 0, listFile.length - 1);
    * QuickSort : Partition
    * @param listFile
    * @param deb
    * @param fin
    * @return
    private int partition(File[] listFile, int deb, int fin) {
    int compt = deb;
    File pivot = listFile[deb];
    int i = deb - 1;
    int j = fin + 1;
    while (true) {
    do {
    j--;
    } while (listFile[j].getName().compareToIgnoreCase(pivot.getName()) > 0);
    do {
    i++;
    } while (listFile[i].getName().compareToIgnoreCase(pivot.getName()) < 0);
    if (i < j) {
    echanger(listFile, i, j);
    } else {
    return j;
    * Tri rapide : quick sort
    * @param listFile
    * @param deb
    * @param fin
    private void triRapide(File[] listFile, int deb, int fin) {
    if (deb < fin) {
    int positionPivot = partition(listFile, deb, fin);
    triRapide(listFile, deb, positionPivot);
    triRapide(listFile, positionPivot + 1, fin);
    * QuickSort : echanger
    * @param listFile
    * @param posa
    * @param posb
    private void echanger(File[] listFile, int posa, int posb) {
    File tmpFile = listFile[posa];
    listFile[posa] = listFile[posb];
    listFile[posb] = tmpFile;

  • How to get the tab when is it pressed?

    I have the following situation:
    I have an array of JTextField inside a scroollpane. The size of my array is nine or ten depends on some rules. But my window show just four JTextField. So I would like to know how to get the event when I press "tab", just to show the others JTextField while I'm pressing "tab". Because I need this event to scrooll down or scrooll up.
    I tried the keylistener, but when I press "tab" any method(keypressed, keyreleased, keytyped) is called.
    I also tried the focuslistener. If this event I could scrooll down or scrooll up, but I couldn't do both!!
    Can somebody help me??
    Thanks anyway!!
    Gin

    JTextField implements Scrollable interface, which provides information to the enclosing container such as JScrollPane.
    Hence when the tab event is fired, you can compute the Rectangle area that should be visible and then call the 'scrollRectToVisible()' method in JTextField. This will inform the JScrollPane to scroll to the rectangle that you mention.
    HTH

  • How to get the Details when we checked with check box?

    Hi....
    I want to display all the records of perticular checked vendor_id's. n for this checking I want to display series of checkbox along with vendor_id's. could U please give me the code for this.

    actually I'm not getting the logic how to get the vendor_id's which are checked in checkbox...... infact I'm not familier with checkbox properties also.....
    i can able to display series of checkboxs along with vendor_ids . but when I clicked perticualar checkboxes which vendor_id's I wanted. how can display only these checked vendor_id's records. ???? Can U help me????

  • How to get the filename when parsing a file with d3l

    All
    After some time have experience with interconnect, IStudio I need the following info. Is it possible to get the filename when parsing a flat file using a d3l? This is needed because we need to store the filename together with the data into the database.
    Any examples or directions to some documents are welcome.
    Regards
    Olivier De Groef

    has anyone some info on this

  • How to get the link when right-clicked (for extension development)?

    Hi,
    I want to get the link when I right-click it in a page.
    I explain: when you right-click a link, you get "Open link in a new window"; this menuitem sends the link to the js function to perform an action and that's exactly what I an looking for
    Thank you

    Hi,
    If you have than one table with add_row_button then this code will work fine
    if (tableBean.getName().equals(pageContext.getParameter(SOURCE_PARAM)))
    && ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM)))
    tableBean is Handle for your advanced table, hope it will help.
    Regards,
    Reetesh Sharma

  • How to get the refund when cancelling your plan?

    Please, I want to know how to get the refund.
    I just cancelled my plan but they asked me to enter customer´s service.

    Hi Andresgarzas,
    Welcome to Adobe Forums
    Please see the link mentioned below for chat
    http://www.adobe.com/support/download-install/supportinfo/
    Select the product you have from the drop down menu. Please select ' Adobe Id and signing in ' from the next box and then click on  (Still Need help! contact us) and it will direct you to chat support.
    Thanks
    Garima

  • How to get the function name in controller class

    Hi experts ,
    I am new to the OAF framework.
    i have created the two functions and bot he the function have the same controller class .i want to capture the function name or function id in the controller class.
    can you please let me know how to get the function id or function name in the controller class.

    Hi apurba,
    Thanks for the quick reply.
    i am trying to get the function name from the FunctionSecurity class,
    However in FunctionSecurity class there is no such method defined as getFunctionName();
    my requirement is ,i have two functions functionA and functionB defined.
    both the function has the same controller class.in controller class ,i need to get the function name ,based on the function name
    i will redirect the page to respective page.
    looking forward for you response.
    appreciate your help
    Thanks,
    KT

  • How to Get the value when clicking on the link

    I had a problem with when clicking on the link.
    I need get the link value to the controller when clicking on the link.
    I am displaying the database columns in jsp using repeater in links.
    I am displaying the data like this:
    RED
    BLUE
    GREEN
    these are three links.when clicking on the link RED. RED should go to the controller.
    After getting RED to the controller i will get the RED value from the database.

    my requirement is like that only
    I have just given the example of emp and dept
    emp(empno,zone_group_id,zone_id,deptno,ename,emp_p_ind,last_update_datetime);
    dept_emp(empno,dept_no,loc,dname,sal_emp,grade,last_update_datetime);
    CREATE OR REPLACE VIEW emp_zone AS
    SELECT e.empno,
          (select zone_group_id from price_zone_group where rownum = 1) zone_group_id,
           d.loc zone_id,    
           d.grade,  
           d.last_update_datetime,
      FROM dept_emp d
          emp e
    WHERE d.empno=e.empno
       AND e.emp_p_ind = 'Y'
      WITH READ ONLY;
    Now
    my requirement is to get the data of emp_zone view and needs to store those data into some other temp table
    if any of the above base table got updated deleted or inserted then the view last_updatetime also will get updated but problem is why im not using base table
    direct because it is having huge data and it performance issue .i have to get the value on the basis of view only and using some logic

  • How to get the return when use this function ----- getUsersInGroup()

    how do we assign list of nodes that getUsersInGroup() returns? And how do we get the result of the returns? And where is the groups and users config files? I am attempting notifications to all users in a group. Thank you!!

    Why do you want to do that, you cannot attach a VO which is not present in the AM. Can you elaborate on your requirement.

  • How to get the 'th' when typing dates?

    Does anybody know how to make the 'th' or 'nd' small when typing a date in pages?
    I'm using pages 5.5.2 and can't seem to find how to do it anywhere.
    I would appreciate a quick response as I'm typing an urgent document.
    Thanks,
                Kevin

    Unicode does not have ordinals for numbers, only for the masculine and feminine.
    The reason being that each language has its own and the effect can be achieved with Superscripting.
    To superscript say st, nd or th select the characters > Menu > Format > Font > Baseline > Superscript
    or
    control command shift +
    Peter

  • How to get the displayID when using X-window to access solaris server?

    I want to get the displayID in my programme when use X-window to access solaris on the server,but i don't know which the API in java?Somebody can tell me?
    Thanks.

    Try deleting the Server.app and download it again from the App Store, restart.
    My Server is also using self signed certificates and is working with iOS device (Trust Profile needed first).

  • [CS3] how to get the "IPanelControlData" when the panel is Minimized.

    I am using the following way but its returning Null<br /><br />InterfacePtr<IPanelControlData> panelData(Utils<IPalettePanelUtils>()->QueryPanelByWidgetID(kPanelWidgetID));<br /><br />Plz help me.

    Hi,
    Please try with the following to get the approver name
    Use SWIWIOBJCT table and provide shopping cart value so that you can get the work item.
    Check for dialog user (W) as WI type where you will get WI agent who is your approver for the shoppign cart.
    Or, If you know the Taxk Id then also you can get the approver name by using this table.
    I hope the above information is useful to you.
    Thanks
    Rajesh K

  • How to get the subclass from a super class( or interface)

    hi,
    I want to get subclass from a super class (or a interface), how to do that? the subclass of a interface means the class implementing the interface.
    for example;
    List ls;
    I want to get the subclass of ls, i.e., LinkedList, Stack, Vector......
    AbstractList al;
    the subclass of al, i.e., ArrayList, Vector.......
    thanks
    Aiwu

    List ls = new ArrayList();Since ls has been declared as a List we can only use List methods
    with it. This is a good thing because we might later want to change
    it to some other sort of List.
    I want to get subclass from a super class (or a interface), how to do
    that?The instance of the subclass declared above did not really come
    from the super class. A class "knows nothing" about its
    subclasses: many sub classes would not even exist at the time
    the class was written.

  • How to get the message from a Runnable class

    The Schedule class is actually a JFrame, what I want to do is to "get" the message from Scheduler Class and display it in a JTextField, to let user know what is doing.
    How can I approach this?
    public class Schedule {
        @SuppressWarnings("static-access")
        public static void main(String args[]) throws InterruptedException {
            final Scheduler s = new Scheduler();
            Thread t = new Thread(s);
            t.start();
    public class Scheduler implements Runnable{
    private static int actionType;
    private static String msg;
        public static void setMsg(String msg) {
            Scheduler.msg = msg;
        public static String getMsg() {
            return msg;
        public void run() {
            //System.out.println((int)(Math.random() * 1000));
            actionType = 1;
            while(true){
                try {
                    switch(actionType){
                        case 1:
                            setMsg("Process actionType: "+actionType);
                            break;
                            case 2:
                            Thread.sleep(2000L);
                            setMsg("Process actionType: "+actionType);
                            break;
                            case 3:
                            Thread.sleep(2000L);
                            setMsg("Process actionType: "+actionType);
                            break;
                            case 4:
                            Thread.sleep(2000L);
                            setMsg("Process actionType: "+actionType);
                            break;
                    actionType++;
                    if(actionType>4){
                        actionType = 1;
                } catch (InterruptedException ex) {
                    System.out.println("Scheduler.run:"+ex.toString());
    }

    Or with only one loop:
            int actionType = 0;
            while (true)
                actionType = (actionType % 4) + 1;
                msg = "Process actionType: " + actionType;
                try
                    Thread.sleep(2000L);
                catch (InterruptedException ex)
                    System.out.println("Scheduler.run:" + ex.toString());
            }

Maybe you are looking for

  • Mysterious Teardown Problem with NIO

    I have an NIO proxy server which relays state information from a number of servers to a number of clients. A requirement for this system is that we can restart the proxy server (together with a couple of other components) from a web app. I tear down

  • Files compatible with mac?

    What files are compatible with a mac book pro?  GIF,JPEG.BMP,DOC,PDF.  Does the mac have compatibility mode for files like windows does?

  • Inserting multiple rows using a single Insert statement without using dual

    Hi all, i am trying to insert multiple rows using a single insert statement like the below one. The below one works fine.. But is there any other change that can be done in the below one without using dual... insert all into ps_hd_samp (num1,num2) va

  • Create a ztransaction for transaction OKB9

    HI All, I need to create a new ztransaction for SAP standard transaction 'OKB9'  which is used to Change Automatic Account Assignment. I tried creating parameter transaction and variant transaction but nothing works. 1.For parameter transaction I get

  • Changeip command? Trying to view or change the DNS name of a computer.

    Hey guys, I did a time machine on computer but it is still remembering the old DNS name. I looked it up and it looks like you can use the changeip command to change the DNS name but when i try and run the command it says changeip command not found. A