I have a project which consists of web and ejb modules. The web module exploits Tapestry 4.0.2 and ejb is version 3. The EJB runs on Jboss 4.2.2. The Operating System is Gnu/ Linux with kernel 2.6.16.
My first questions is, according to the document, I am able to disable tapestry cache in order to see the change made during testing my web project. So I set the the attribute "-Dorg.apache.tapestry.disable-caching=true" in run.sh which shows ========================================================================= JBoss Bootstrap Environment JBOSS_HOME: /home/User/apps/jboss-4.2.2.GA JAVA: /home/User/apps/jdk1.6.0_01/bin/java JAVA_OPTS: -Dprogram.name=run.sh -server -Dorg.apache.tapestry.disable-caching=true -Djava.net.preferIPv4Stack=true CLASSPATH: /home/User/apps/jboss-4.2.2.GA/bin/run.jar:/home/User/apps/jdk1.6.0_01/lib/tools.jar ========================================================================= I found the cache still exists because the first page (Home.html) originally I set the password field to type = "text"; then change it to type = "password". Unfortunately, the the html source of generated page still shows type = "text", resulting in the password filed still displays characters that user types. What part I might miss in order to disable the cache. My second question is - when connecting to stateless session bean, jboss always issues error "javax.naming.NameNotFoundException: LoginService not bound". LoginService is a Stateless session, which implements Remote and Local interface, as follow: @Stateless public class LoginService implements LoginServiceRemote, LoginServiceLocal{ ... public static final String RemoteJNDIName = LoginService.class.getSimpleName() + "/remote"; public static final String LocalJNDIName = LoginService.class.getSimpleName() + "/local"; @Override public Boolean validate(UserProfile userProfile) { ... } } @Remote public interface LoginServiceRemote extends ILoginService{ ... } @Local public interface LoginServiceLocal extends ILoginService{ ... } public interface ILoginService{ public Boolean validate(UserProfile userProfile); } It looks like I have successfully created Stateless Bean because the jmx-console displays ... jboss.j2ee ear=projeect-j2ee.ear,jar=project-ejb.jar,name=LoginService,service=EJB3 ... Also, the terminal shows [EJBContainer] STARTED EJB: com.project.bi.common.service.LoginService ejbName: LoginService But why can't I lookup the LoginService bean successfully? The way how I lookup bean is to First, ILoginService remoteLoginService = (ILoginService) lookupJNDI(LoginService.RemoteJNDIName); Then, validate that user. loginService.validate(new UserProfile(getUserName(), getPassword())); Where did I do it wrong? Or what parts I might miss? I appreciate any suggestion. Thank you very much. ___________________________________________________________ Yahoo! Answers - Got a question? Someone out there knows the answer. Try it now. http://uk.answers.yahoo.com/