Solved

Communication between two session beans in jsp

Posted on 2008-06-26
3
274 Views
Last Modified: 2008-06-26
Hi.
I'm creating a rather complex webpage here, and keeping all methods in one session bean creates an enormous class.
I therefore wonder if it is possible break this into several session beans.
The problem is communication between the session beans.
Say Im using one session for selecting language, and one session for displaying some content.
The java class for language selection is simple: (See code snippet)

Problem: The answer from Content is always 1.

Any idea why?
Or any neat trick to avoid this?

Jsp:
<jsp:useBean id="lang" class="Language" scope="session" />
public class Language implements Serializable {
   private int language = 1;
   private static Reference ref = null;
   public int getLanguage() { return language;}
   public void setLanguage(int language) { this.language = language; }
   public String languageTest() { return language select =  + this.language; }
   public static synchronized Language getDefault() {
       Language obj;
        if (ref != null) {
            obj = (Language) ref.get();
        } else {
            obj = null;
        }
        if (obj == null) {
            obj = new Language ();
            ref = new WeakReference(obj);
        }
        return obj;
    }
}
and the java class for content is :
Jsp:
<jsp:useBean id="cont" class=" Content " scope="session" />
public class Content implements Serializable {
   private Language language;
   public Content() { language = Language.getDefault(); }   
   public String contentBlock() {
       if(language.getLanguage() == 1) return Some text;
       if(language.getLanguage() == 2) return Some other text;
   }
   public String languageTest() { return language select =  + this.language. getLanguage(); }
}

Open in new window

0
Comment
Question by:kristian_gr
  • 2
3 Comments
 
LVL 92

Expert Comment

by:objects
ID: 21872621
You could have your session bean encapsulate the various beans u need

public class MySessionBean implements Serializable
{
   private Language language = new Language();
   private Content content = new Content();

    ...

0
 

Author Comment

by:kristian_gr
ID: 21872895
hmm. not quite what I was looking for.

Is it possible to something like:
public class MySessionBean extends Language, Content

0
 
LVL 92

Accepted Solution

by:
objects earned 500 total points
ID: 21872910
> hmm. not quite what I was looking for.

may be a better way, not really my area

> Is it possible to something like:
> public class MySessionBean extends Language, Content

No you can only extend a single class

0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
sites similar to codingbat to improve coding hanson skills 3 49
eclipse argument 14 60
difference of if loops 23 49
varialbe initialization 11 32
For customizing the look of your lightweight component and making it look opaque like it was made of plastic.  This tip assumes your component to be of rectangular shape and completely opaque.   (CODE)
INTRODUCTION Working with files is a moderately common task in Java.  For most projects hard coding the file names, using parameters in configuration files, or using command-line arguments is sufficient.   However, when your application has vi…
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.

813 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now