Enterprise JavaBeans :: Does Container Managed Entity Manager Is Thread-safe In Stateless Session Bean?
May 8, 2014
I read JEE6 doc and confused with : Does container managed entity manager (injected by PersistenceContext annotation) is thread-safe in stateless session bean in multiple-thread env?
See code below, if there are 2 requests to stateless sesion bean in 2 concurrent threads , is it using same Entity Manager Instance or not?
@Stateless(name = "HRFacade", mappedName = "HR_FACES_EJB_JPA-HRFacade-HRFacade")
public class HRFacadeBean implements HRFacade, HRFacadeLocal {
@Resource
SessionContext sessionContext;
@PersistenceContext(unitName = "HRFacade")
private EntityManager em;
[Code] .....
View Replies
ADVERTISEMENT
May 9, 2014
I finish reading The EntityManager Interface in JEE tutorial. I know I can use container manager entity manager in EJB, but I want to explore how to use application managed entity manager in EJB.
Can I use application managed entity manager in EJB (container management JTA transaction is used)? Where do I should close entity manager if can?
The following is an example from JEE tutorial, but didn't find where to calose entity manager. and can I create mutiple EntityManagerFactory objects and Entity Manager objects to use them in a JTA transaction?
@PersistenceUnit
EntityManagerFactory emf;
EntityManager em;
@Resource
UserTransaction utx;
[Code] .....
View Replies
View Related
Oct 22, 2008
I am using EJB 2.1 when i am tryinh to access another bean from one bean I am getting :
javax.ejb.ObjectNotFoundException:No such entity the full stack trace is given ...
javax.ejb.ObjectNotFoundException: No such entity!
09:06:05,795 ERROR [STDERR] at org.jboss.ejb.plugins.cmp.jdbc.JDBCFindEntityCommand.execute(JDBCFindEntityCommand.java:46)
09:06:05,795 ERROR [STDERR] at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.findEntity(JDBCStoreManager.java:591)
09:06:05,795 ERROR [STDERR]
[Code] .....
View Replies
View Related
Feb 23, 2013
I am doing this
@Startup
@Singleton
@ConcurrencyManagement(ConcurrencyManagementType.CONTAINER)
@Lock(LockType.READ)
public class ResourceBean {
[Code] ....
And I call this singleton bean from a stateless session bean like this
@Stateless
public class ClientBean {
@EJB
ResourceBean resource;
public String create(String r)
{
String res=resource.returnString(r);
return res;
}
}
But resource.returnString(r); gives a org.apache.jasper.JasperException: java.lang.NullPointerException I started the glassfish server in debug mode and found out that "resource" was null. but @PostConstruct in singleton does print which means singleton bean exists.
Can we call singleton beans with no interface in such a way form a session bean? I actually want to acquire instance of singleton bean when a client invokes method in Client bean...
View Replies
View Related
Feb 18, 2015
Below is my ejb-jar.xml
<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
<ejb-jar>
<display-name>TestEJB</display-name>
<enterprise-beans>
<session>
<ejb-name>TestSessionLocal</ejb-name>
[code]....
All my classes implement proper local classes EJBLocalHome and EJBLocalObject.This configuration used to work fine in JBOSS 5.1.0 G
View Replies
View Related
Oct 23, 2013
I have an stand alone client to use a remote ejb with some methods. All works fine, but when I pass an entity class as parameter from the stand alone client to the remote ejb, the entity class is received as null.
View Replies
View Related
Jan 30, 2014
I am trying to restrict the number of views in JSF 2.0.2 using
<context-param>
<param-name>org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION</param-name>
<param-value>5</param-value>
</context-param>
In my case my managed bean is View Scoped and it supports a UI page which has multiple forms and each form is submitted as AJAX POST request.
As per the statndard, setting restriction to 5 should create 5 views and after that based on LRU algorithm the oldest views should get deleted if 6th views is created.
Therefore any action on the oldest view will throw the ViewExpiredException and i simply redirect the user to view expired page.
1) When i set the restriction to 5 views, i open 4 tabs with 3 forms each.
2) I submit the 3 forms on first tab everything works fine.
3) As soon as I go to 2nd tab and submit the first form thr, i get view expired exception
4) It seems I am exceeding the number of views I mentioned in web.xml
I want to know :
1) Does every AJAX POST submit itself creates a view ?
2) How I can count the number of views created in a session ?
3)Can i force expiry of a view in JSF 2.0.2 while the session is still alive ?
4) Normally JSF 2.0.2 session cachces the views. Lets assume session is alive the entire day but a view was created in morning at 9:00 AM and is not used again the entire day. Assuming that session doesn't reaches the max number of views it can save in entire day, will the view created in morning expire on its own after certain interval of time ? If not , can we still force its expiry while keeping the session alive ?
View Replies
View Related
May 28, 2013
I have some embedded systems (with web server) putting their states, sensor values into an XML file.
<sensor1>
<temp>21.4</temp>
<unit>°C</unit>
</sensor1>
Now I played a little with EJB3. I want to start a timer bean in a 10second interval which retrieves the IP of registered devices from a databases, opens client sockets with a Thread Pool and retrieves the XML file over HTTP GET of each device listed in the db.
Is it possbile with EJB3? how to start thread based background services like that within EJB3 timer bean?
View Replies
View Related
Feb 14, 2015
Am trying to develop a web application, and am using the Entity Manager. The web application involves users posting data to the database. How do I incorporate the entity manager together with the prepared Statement functionality to avoid users corrupting the database with SQL tags?
If I have EJB database session beans, when the content of the database changes, does the information on the web page get automatically updated dynamically on the client machine?
View Replies
View Related
Jul 31, 2014
I'm training myself with the EJB 3 technology. I would like to create a stateless bean that instead of returning a String, it returns an object. I tried in the same way I did with the first exercise, but I'm getting several errors.
View Replies
View Related
Jul 10, 2014
I have situation where a user can request java server to send a value to an embedded device, and if the device is asleep, that value needs to be stored in a queue until the device wakes up and sends a position to java server, at which point the server checks if there is a value in the queue and if there is, it then sends that value to the device. The maximum size of the queue is 1 for now. And if the user makes continuous requests to java server, the old value is removed and the new value is added.
Initially I was looking into BlockingQueue, but the problem with that is, well, it blocks. queue.put(value) will block if queue is full, and queue.take() will block if queue is empty. I can't have something that blocks. When the device responds to server, server checks if value is in queue, if it is not then the server carries on the rest of its responsibility. Thus, I then entertained ConcurrentLinkedQueue. While queue.offer(value) and queue.poll(); allow you to add and remove values respectively from the queue without blocking, it does not allow you to set a maximum size limit of the queue. My queue must have a maximum size limit and it has to always be the newest value the user submits to the queue (where old values are removed).So this is what I came up with:
Java Code: class Unit {
private List<Integer> cmdQueue;
public Unit(){
cmdQueue = Collections.synchronizedList(new LinkedList<Integer>());
[code]....
I use Collections.synchronizedList, as I do here, do I still need to use synchronize as I did above?
View Replies
View Related
Jul 10, 2014
Implementation that proves that instance variables are not thread safe ....
View Replies
View Related
Apr 3, 2013
I have a multi-threaded application but one function (A) I need to call, that is provided by a third party, is not thread safe. I need to make parallel calls to function (A) so my only option is to start multiple process that I can call from each of my main applications threads.
To do this I created a RMI interface between a the client and the remote process. On the server side I start multiple processes each assigned a different port. On the client side I have a queue manager that connects to the processes I started and builds a queue of them. It passes the client to the threads as needed so they can function in parallel.
I am new to Java development and have the following questions:
1. Each of the server processes require an init function to be run before providing the service. How do I setup the server processes to continue to run in memory listening for a a service request after running the init processes.
2. Is there a better implementation of what I am trying to do?
View Replies
View Related
Jan 22, 2015
Are the static variables in servlet thread-safe?
View Replies
View Related
Nov 9, 2014
I have tried this example ([URL].../) with CarDao extending the BaseDao, it works like a charm.However, from the CarDao class, my NetBeans underlined the class name “CarDao” with the error message “A session bean must not extend another session bean.” But I can compile, deploy and run the application without any problem.
I have also heard that a session bean cannot extend another session bean, but why it works here?
I am using Java EE 6, NetBeans 8.0.1 and WebLogic 12c for this code testing.
View Replies
View Related
Aug 5, 2012
i get this error when trying to Persist a customer Entity in my web application using netbeans with the default glassfish server persistence provider eclipselink(JPA2.0)
error is
SEVERE: javax.validation.ConstraintViolationException: Bean Validation constraint(s) violated while executing Automatic Bean Validation on callback event:'prePersist'. Please refer to embedded ConstraintViolations for details.
the table that i want to write to has the following colums
id ==> primarykey auto increment not null int
name == varchar(45) not null
phone ==> varchar(19)
nationalIdNo ==>varchar(19)
balance ==> bigdecimal(6,2) not null default(0.00)
in my addNewCustomer i only need to set name, phone and nationalIdNo only this is my code
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package session;
import cart.Cart;
import entity.Customer;
import javax.ejb.Stateless;
import javax.ejb.LocalBean;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
[code].....
why am i getting this error? and how do you do a bean validation?
View Replies
View Related
Jun 5, 2014
I have a JSF bean which is request scope and corresponding JSF UI page. when user tries to open this page, we are getting exception 'Cannot instantiate user.java class <default constructor>'. This does not come always. It comes very rarely. JSF version is 1.2
View Replies
View Related
Jun 11, 2014
About creating views,
1. When we have a view and this uses two or three managed beans and not only one, is this ok? is a good design?
2 If we have two views and both of them only share one functionality (they need to display datatable with clients) , for the second view and for the shared functionality, should I in the managed bean for the second view create the same method that gets the clients or reuse the method in the managed bean created for the first view?
View Replies
View Related
Jan 21, 2013
How to get messages from WebSphere MQ using ejb MDBs and I have to deploy this in Weblogic server.
View Replies
View Related
Feb 15, 2015
I have a situation to load data while JSF page loads. Also have a filter which populates user information from http request.
I was expecting the filter first to populate the user information and in the managed bean get method to verify the user information and get the data (from database). But in this case i see the managed bean get method is invoked before filter populates user information and i get null pointer exception because the user information is null.
I had to work around to get the user information from FacesContext in the managed bean get method because the user information wasn't available. Is there a way to make sure the filter is invoked first?
View Replies
View Related
Jun 15, 2014
IDE: Netbeans 8.0.
Server ejb:
"@Stateless
public class ejb implements ejbRemote{
public String say(){
return "hello";
[Code] ....
When I run the Web project on the Server host, it's OK. But when I run it on another host it returns error. I can access 192.168.0.2:7676 in browser(returns some context string), so it may not be caused by firewall.
I think the problem is the initalContext is not generated from 192.168.0.2:7676 but from local JVM, because when when running it in the Server I change the ip address to random number it also is OK.
View Replies
View Related
Apr 22, 2014
I have included the log4j.jar in libraries; added log4j.xml in the sources folder; but I am getting an error:
<Apr 22, 2014 11:07:50 AM PKT> <Warning> <EJB> <BEA-010065> <MessageDrivenBean threw an Exception in onMessage().
The exception is:
java.lang.NoClassDefFoundError: org/apache/log4j/Logger.
java.lang.NoClassDefFoundError: org/apache/log4j/Logger
at test.MyMessageBean.onMessage(MyMessageBean.java:39)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:575)
at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:477)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:375)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4855)
Truncated. see log file for complete stacktrace
how to resolve this???
View Replies
View Related
Feb 14, 2013
I have a question about enumerations,
class Test{
public enum Gender{
Male, Female
}
@Enumerated(EnumType.STRING)
@Column(length=1)
private Gender gender;
}
My question is this correct? My goal is to keep only one character of the enumeration .
View Replies
View Related
Mar 3, 2013
I am looking for the ability, on the server side, to run programs or "jobs" in a job queue, where the jobs are processed as first in first out. If you are familiar with the IBM iSeries, they have a built in job queue mechanism which accomplishes what I am looking for. The primary purposes for this would be to process and update large amounts of data in a thread safe environment.
View Replies
View Related
Jun 7, 2013
I tried to develop a sample project with reference to : [URL] .....
When I try to run the client, I get the following error
javax.naming.NameNotFoundException: ejb: not bound
at org.jnp.server.NamingServer.getBinding(NamingServer.java:771)
at org.jnp.server.NamingServer.getBinding(NamingServer.java:779)
at org.jnp.server.NamingServer.getObject(NamingServer.java:785)
at org.jnp.server.NamingServer.lookup(NamingServer.java:396)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[Code] .....
View Replies
View Related
Jul 5, 2013
I am runing ejb3 in weblogic 10.3 and struts in tomcat server. both communication is not happening .
root dir
onlyenb6
account class
package ejb3.onlyejb;
import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.Id;
[Code] ....
Get error
accno=44
na=hjhjhj
bal=777.0
enter in to if loop
jndi properties nuderprocess
jndi properties nuderprocess22
loading p file={java.naming.provider.url=t3://localhost:7001,
[Code] ....
View Replies
View Related