| 
 Please describe the scenario that caused running out of 
Sessions on The Oracle Database. 
That should not happen if you always close enttity managers 
after use (entityManager.close()) 
  
  
To process outputParametersDetected event: 
in SessionCustomizer add event listener to the 
session: 
  
session.getEventManager().addListener(new MyListener()); 
  
where: 
  
public class MyListener extends 
org.eclipse.persistence.sessions.SessionEventAdapter {  
    public void outputParametersDetected(org.eclipse.persistence.sessions.SessionEvent 
event) {
        Object 
value = ((Map)event.getResult()).get(("FUNCTION_RESULT"); 
    } }  
  ----- Original Message -----  
  
  
  Sent: Monday, July 06, 2009 9:52 AM 
  Subject: AW: [eclipselink-users] Rading 
  Functionresult from a DataModifyQuery 
  
  
  
  Thanks 
  for your prompt answer. 
  I 
  had the parameter for exclusive-connection set priviusly but tured  it 
  off egain. I was running out of Sessions on The Oracle 
  Database.. 
  Is 
  it possible to set the parameter for just the Sesion Im using for the 
  Functioncall? 
  Is 
  there a Sample of using the outputParameterDetected 
  event? 
    
    
  
  
  
  Von: eclipselink-users-bounces@xxxxxxxxxxx 
  [mailto:eclipselink-users-bounces@xxxxxxxxxxx] Im Auftrag von Andrei 
  Ilitchev Gesendet: Montag, 6. Juli 2009 15:23 An: 
  EclipseLink User Discussions Betreff: Re: [eclipselink-users] Rading 
  Functionresult from a DataModifyQuery   
    
  
  I would keep using 
  ValueReadQuery,  
  
  pass property 
  "eclipselink.jdbc.exclusive-connection.mode" -> "Always" to 
  createEntityManager method  
  
  and ProxyUser connection will 
  be always used.  
  
  
  If you use DataModifyQuery 
  then handle outputParametersDetected event that would contain the retuned 
  value.  
  
  
  ----- Original Message ----- 
   
  
  
  
  Sent: Monday, July 06, 2009 
  9:08 AM  
  
  Subject: [eclipselink-users] 
  Rading Functionresult from a DataModifyQuery   
  
  Hello, I'm using 
  ValueReadQuery with StoredFunctionCall to read the Function result. Now I 
  have to execute the Function as a DataModifyQuery to force EL use 
  ProxyUser. Is there a Possibility to set ValueReadQuery to by also a 
  DataModifyQuery?
  SampleCode:     public Object 
  executeFunction(String functionName, HashMap<String, Object> params, 
  boolean modifysData) {     StoredFunctionCall functionCall = 
  new StoredFunctionCall();         
  functionCall.setProcedureName(functionName); DatabaseQuery query; if 
  (modifysData) { //Using DataModifyQuery for Functions which modifies Data 
  on Database query = new DataModifyQuery(); } else { //Using 
  ValueReadQuery for Functions which doesn't modifies Data on Database query 
  = new ValueReadQuery(); }         
  query.setCall(functionCall);         
  List<Object> args = new 
  ArrayList<Object>();         for 
  (String key : params.keySet()) 
  {             
  functionCall.addNamedArgument(key);             
  query.addArgument(key);             
  args.add(params.get(key));         
  }
         
  functionCall.setResult("FUNCTION_RESULT");
 
  //Using DataModifyQuery 
  has the effet that the Result is an Integer which (maby) indicates sucsessfull 
  execution and not the Functionresolt it 
  self.         return 
  getSession().executeQuery(query, args);     }
  Best 
  Regards Berner Martin Schweiter 
  Braunviehzuchtverband
  _______________________________________________ eclipselink-users 
  mailing list eclipselink-users@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/eclipselink-users   
  
   
  _______________________________________________ eclipselink-users 
  mailing 
  list eclipselink-users@xxxxxxxxxxx https://dev.eclipse.org/mailman/listinfo/eclipselink-users
  
 |