Unit of work

Hi ,
  My requirement is that while creating internal activity in project once enters the work center name in work center field the activity type automatically comes from the work center. The same way I need the unit of work also should come based on the activity type unit.
Please help me resolve this issue.
Thanks
S.Murali

what KP told is absolutely true,
if u want, try with the exit CNEX0028 and function module EXIT_SAPLCOZR_001 and take the help of an abaper,
it may possible.
ashis
Edited by: ashis mohanty on Mar 6, 2009 11:08 AM

Similar Messages

  • Rule Execution : Error while executing a rule session unit of work

    Error while executing a rule session unit of work.
    The rule session CreditRule:130002 failed to execute a unit of work.
    Check the underlying exception and correct the error. Contact oracle support if error is not fixable.
    I have created a simple rule and using a decision service and a decide process activity I have tried to run the orchestration.
    After compiling and saving and re-opening the orchestration flow looks correct.
    When I execute the process I get the above error.
    Is this something wrong with the Rule ?
    Can anyone offer any advice
    Thanks
    Cliff

    Hi.
    Any further advice on this issue?
    Getting the same problem and cannot figure out a solution.
    How do I check the "underlying exception" btw?

  • Airplay icon on ipad is gone, trying to play spotify on my ipad and use airplay  to the Bose unit, it worked yesterday, but today the airplay icon is gone , how do I get it back

    airplay icon on ipad is gone, trying to play spotify on my ipad and use airplay  to the Bose unit, it worked yesterday, but today the airplay icon is gone , how do I get it back

    I just had the same problem. Took the first unit back and the problem is still occuring on the second one. I solved it by setting up again with the USB, but it keeps dropping out every few days.

  • What is luw (logical unit of work)

    pls tell me what is luw (logical unit of work)
    what r the types of luw .
    2 what ispurpose of code inspector and extended program check
    pls expalin the diffrence b/w those two
    3what are the candidate keys in db tables
    4 what is the difference b/w  occurs 1 and occurs 2 clauses
    data : begin of itab occurs 0 .
    data : itab type standard table of structure type initial size 1 with header line
    pls tell diffrence between theese two statements
    5can u pls tell what is the client in sap
    pls tell answers to questions
    pls dont give any websites addresses to see answers
    6 what is the transaction from database point of view
    7 what is the variant in alv reports
    how do we use reuse_alv_grid_variant_get fun module in alvs

    hi,
      this gives complete idea
      SAP LUW
    Since, as a rule, an application program is processed by several work processes in succession, and every change of the work process is linked with an implicit database commit , an application program is not automatically linked with a single database LUW. This applies in particular to dialog-oriented applications, in which one database LUW is assigned to one dialog step.
    To ensure the data consistency of application programs that are executed across different work processes, the application statements are not directly executed in an SAP LUW, rather, are first registered and then executed by a single work process, that is, in a single database LUW.
    Two techniques are available for bundling the change statements in a database LUW:
    Bundling via function modules (update)
    Through the statement CALL FUNCTION...IN UPDATE TASK, an update function module is registered for subsequent execution in an update work process.
    Bundling via function modules (transactional RFC)
    Through the statement CALL FUNCTION... IN BACKGROUND TASK DESTINATION, a remote- compatible function module is registered for subsequent asynchronous execution via the RFC interface (transactional RFC ).
    Bundling via subprograms
    Through the statement PERFORM ... ON COMMIT, a subprogram is registered for subsequent execution in a different work process.
    Statements for SAP LUWs
    A SAP LUW is controlled via the Open SQL statements COMMIT WORK, ROLLBACK WORK and SET UPDATE TASK LOCAL.
    Note
    A function module can be classified either as an update function module or remote-compatible, but not both at the same time. The update helps realize SAP LUWs within an SAP System, while the transactional RFC creates LUWs in distributed systems.
    COMMIT WORK
    Variants:
    1. COMMIT WORK [AND WAIT].
    2. COMMIT CONNECTION con.
    Effect
    Terminates an SAP LUW and stores the changes.
    Variant 1
    COMMIT WORK [AND WAIT].
    Effect
    The statement COMMIT WORK completes the current SAP LUW and opens a new one, storing all change requests for the currenta SAP LUW in the process. In this case, COMMIT WORK performs the following actions:
    It executes all subroutines registered using PERFORM ON COMMIT.
    It triggers an internal event in Object Services that ensures the registration of changes in persistent objects as the last update function module, as well as the subsequent initialization of persistent object attributes.
    It initiates the processing of all registered update function modules in the update work process.
    This executes all high-priority update function modules registered using CALL FUNCTION ... IN UPDATE TASK in the order of their registration and in a common database LUW. If you do not specify the addition AND WAIT, the program does not wait until the update work process has executed it (asynchronous updating). If you specify the addition AND WAIT, however, program processing after COMMIT WORK will not continue until the update work process has executed the high-priority update function modules (synchronous updating).
    If all high-priority update function modules are completed successfully, the statement executes the low-priority update function modules together in a common database LUW.
    In parallel, it also executes the individual function modules registered using CALL FUNCTION ... IN BACKGROUND TASK DESTINATION in a separate database LUW for each destination.
    It handles all SAP locks set in the current program according to the value of the formal parameter _SCOPE of the corresponding lock function modules.
    It triggers a database commit that also terminates the current database LUW.
    The completion of statement COMMIT WORK triggers the event TRANSACTION_FINISHED of the system class CL_SYSTEM_TRANSACTION_STATE, where the parameter KIND has the value of the constant CL_SYSTEM_TRANSACTION_STATE=>COMMIT_WORK.
    If the statement COMMIT WORK is executed by calling special programs, be aware of the following:
    In a program executed using batch input, or if you have called the program using the USING addition of the statement CALL TRANSACTION, COMMIT WORK terminates the batch input processing when using the corresponding settings.
    In a program called using CALL DIALOG, COMMIT WORK initiates the processing of subroutines or updated function modules registered using PERFORM ... ON COMMIT and CALL FUNCTION ... IN UPDATE TASK. Therefore, it does not complete the current SAP LUW. The SAP LUW cannot be completed until you execute the COMMIT WORK statement in the calling program.
    You cannot execute the COMMIT WORK statement during the updating procedure or during the execution of subroutines registered using PERFORM ... ON {COMMIT|ROLLBACK}.
    System fields
    sy-subrc Meaning
    0 You have specified the AND WAIT addition, and the updating of the update function modules was successful.
    4 You have specified the AND WAIT addition, and the updating of the update function modules was not successful.
    The COMMIT WORK statement always sets sy-subrc to 0 if the AND WAIT addition is not specified.
    Note
    The COMMIT WORK statement closes all database cursors . Open SQL statements that access a database cursor later ( SELECT loop and FETCH) raise an exception that cannot be handled.
    Variant 2
    COMMIT CONNECTION con.
    Note
    This statement is for internal use only.
    It cannot be used in application programs.
    Effect
    The COMMIT command is not executed on the standard database, but only on the secondary database connection specified by con. con is the name of the database connection as it was specified in the table DBCON in the column CON_NAME. The database connection con can also be specified dynamically in the form (source_text) - the source_text field contains the name of the database connection. The source_text field must be of the type C or STRING.
    On the specified secondary database connection, the database commit:
    Closes all open database cursors (OPEN CURSOR)
    Releases all database locks
    Note
    Note that the COMMIT CONNECTION DEFAULT statement unlike COMMIT WORK executes a pure database commit on the DEFAULT connection.
    Exceptions
    Non-Catchable Exceptions
    Cause: COMMIT WORK is not possible in a FORM that was called using PERFORM ... ON COMMIT.
    Runtime Error: COMMIT_IN_PERFORM_ON_COMMIT
    Cause: COMMIT WORK is not allowed in the update.
    Runtime Error: COMMIT_IN_POSTING
    ROLLBACK WORK
    Variants:
    1. ROLLBACK WORK.
    2. ROLLBACK CONNECTION con.
    Effect
    Terminates a SAP-LUW without storing the changes.
    Variant 1
    ROLLBACK WORK.
    Effect
    The statement ROLLBACK WORK closes the current SAP-LUW and opens a new one. In doing so, all change requests of the current SAP-LUW are canceled. To do this, ROLLBACK WORK carries out the following actions:
    Executes all subprograms registered with PERFORM ON ROLLBACK.
    Deletes all subprograms registered with PERFORM ON COMMIT.
    Raises an internal exception in the Object Services that makes sure that the attributes of persistent objects are initialised.
    Deletes all update function modules registered with CALL FUNCTION ...IN UPDATE TASK from the VBLOG and deletes all transactional remote Function Calls registered with CALL FUNCTION ... IN BACKGROUND TASK from ARFCSSTATE and from ARFCSDATA.
    Removal of all SAP locks set in the current program in which the formal parameter _SCOPE of the lock function module was set to the value 2.
    Triggers a database rollback, which also ends the current database-LUW.
    After completion of the statement COMMIT WORK, the event TRANSACTION_FINISHED of the system class CL_SYSTEM_TRANSACTION_STATE is raised, in which the parameter KIND has the value of the constant CL_SYSTEM_TRANSACTION_STATE=>ROLLBACK_WORK.
    Variant 2
    ROLLBACK CONNECTION con.
    Note
    This statement is for internal use only.
    It cannot be used in application programs.
    Effect
    The ROLLBACK-statement is not executed on the standard database but only on the secondary database connection, specified through con. con is the name of the database connection as it was specified in table DBCON in column CON_NAME. The database connection con can also be specified dynamically in the form (source_text), in which the field source_text contains the name of the database connection. The field source_text must be of the type C or STRING.
    Notes
    As all opened database cursors on the respective database connections are closed at ROLLBACK, the attempt to continue a SELECT-loop after a ROLLBACK, leads to a runtime error. Due to the same reason, a FETCH after a ROLLBACK to the then closed cursor, leads to a runtime error. You have to make sure that cursors that are still open, are no longer used after ROLLBACK.
    After execution of the statement ROLLBACK, SY-SUBRC is always equal to 0. It is not necessary to check if SY-SUBRC is unequal to 0 after ROLLBACK.
    ROLLBACK must not be used during update (CALL FUNCTION ... IN UPDATE TASK) or during the execution of FORMs, which were registered with PERFORM ... ON COMMIT resp. PERFORM ...ON ROLLBACK.
    The statement ROLLBACK WORK is implicitly executed if a message of the type A is treated with the addition ERROR_MESSAGE when calling a function module with CALL FUNCTION.
    Exceptions
    Non-Catchable Exceptions
    Cause: ROLLBACK WORK is not allowed within a FORM that is called with PERFORM ... ON COMMIT or PERFORM ... ON ROLLBACK.
    Runtime Error: ROLLBACK_IN_PERFORM_ON_COMMIT
    Cause: ROLLBACK WORK is not allowed within an update.
    Runtime Error: ROLLBACK_IN_POSTING
    SET UPDATE TASK LOCAL
    Syntax
    SET UPDATE TASK LOCAL.
    Effect
    This statement specifies that the high-priority update function modules - registered during the current SAP LUW using CALL FUNCTION ... IN UPDATE TASK - are registered in the ABAP memory instead of the VBLOG database table. In addition, it specifies that the current work process and not the update work process run these modules during the current database LUW, when the COMMIT WORK statement is executed. This statement has no effect on low-priority update function modules.
    At the beginning of every SAP LUW, the local update function is deactivated. If you wish to use it, you must reactivate it again before the first update function module is registered.
    System fields
    sy-subrc Meaning
    0 The local update function is activated.
    1 The local update function has not been activated, because the program has already registered at least one update function module for the normal updating procedure in the current SAP-LUW.
    Notes
    The local update function performs a synchronous update according to the COMMIT WORK statement, independent of the addition AND WAIT.
    The occurrence of a database rollback during the local update affects all previous change requests.

  • Unit Of work upgrade issue 9.0.3- 10.1.4

    Hi,
    I recently upgraded from Toplink 9.0.3 to Toplink 10.1.3. I changed nothing in my code except the deployment java descriptor to use the new classes implemented instead of the deprecated classes. I also used the new TypeConversions for my CLOBs and BLOBs. Everything worked fine in my unit tests but then once I'd deployed the application into production my users kept on getting an irregular error. I can't reproduce the error myself as its so irregular. I have tracked it down to when my users enter a clob/blob of data into the database. The strange thing is that I close the unit of work and even test if its still active and I get false as an answer but somehow when I execute on the session it uses the UnitOfWork which has expired for some reason. I have checked my code and can't find anything that is changed.
    All my code basically always checks whether a UOW is active and if it is not it uses the session to execute the query. Here is a java code extract:
    if ( isTxActive() ) {
    objectResults = uow.readAllObjects(Class.forName(objectType), expression);
    objectResults = uow.registerAllObjects(objectResults);
    } else
    objectResults = session.readAllObjects(Class.forName(objectType), expression);
    I use the following setup:
    - Oracle 9i database
    - JDK 1.5
    - Oracle JDBC Thin Driver version - 10.1.0.2.0
    I have tried the following:
    - Specified my OraclePlatform i.e. Oracle9Platform
    - Tried playing around with the SQL String binding
    - Double checked my type conversions
    Below is my logfile output and also my login parameters and extract of one of my descriptors.
    Any help would be appreciated.
    I was wondering if there is a timeout on the UnitOfWork or if its multi-threaded hence my application doesn't wait for my CLOB to finish being written?
    Thanks in advance,
    Paula
    2006-05-24 11:32:05,870 (toplink) DEBUG - execute_query
    2006-05-24 11:32:05,871 (toplink) DEBUG - execute_query
    2006-05-24 11:32:05,871 (toplink) DEBUG - DatabaseAccessor(connected)--INSERT INTO chebi.AUTOGEN_STRUCTURES (ID, STRUCTURE_ID) VALUES (12599, 19211)
    2006-05-24 11:32:05,874 (toplink) DEBUG - execute_query
    2006-05-24 11:32:05,875 (toplink) DEBUG - execute_query
    2006-05-24 11:32:05,875 (toplink) DEBUG - DatabaseAccessor(connected)--INSERT INTO chebi.DEFAULT_STRUCTURES (ID, STRUCTURE_ID) VALUES (6968, 19213)
    2006-05-24 11:32:05,885 (toplink) DEBUG - execute_query
    2006-05-24 11:32:05,886 (toplink) DEBUG - execute_query
    2006-05-24 11:32:05,886 (toplink) DEBUG - DatabaseAccessor(connected)--INSERT INTO chebi.IMAGE_PRECOMPUTES (ID, FORMAT, IMAGE, STRUCTURE_ID) VALUES (7208, 'p
    ng', empty_blob(), 19213)
    2006-05-24 11:32:05,898 (toplink) DEBUG - DatabaseAccessor(connected)--SELECT IMAGE FROM chebi.IMAGE_PRECOMPUTES WHERE (ID = 7208) FOR UPDATE
    2006-05-24 11:32:05,905 (toplink) DEBUG - write_BLOB
    2006-05-24 11:32:05,905 (toplink) DEBUG - DatabaseAccessor(connected)--commit_transaction
    2006-05-24 11:32:05,915 (toplink) DEBUG - end_unit_of_work_commit
    2006-05-24 11:32:05,915 (toplink) DEBUG - release_unit_of_work
    2006-05-24 11:32:05,915 (controller.DatabaseAction) DEBUG - ModifyStructureAction_postprocess: empty method
    2006-05-24 11:32:05,915 (controller.DatabaseAction) DEBUG - ModifyStructureAction_findSuccess: start method
    2006-05-24 11:32:05,915 (controller.DatabaseAction) DEBUG - ModifyStructureAction_findSuccess: preparing forward ( set form | release lock | reset token )
    2006-05-24 11:32:05,915 (controller.DatabaseAction) DEBUG - ModifyStructureAction_findSuccess: forward to searchId
    2006-05-24 11:32:05,917 (toplink.ToplinkDAO) DEBUG - find(String objectType, String col, String val): start method
    2006-05-24 11:32:05,917 (toplink.ToplinkDAO) DEBUG - isTxActive: start method
    2006-05-24 11:32:05,917 (toplink.ToplinkDAO) DEBUG - isTxActive: false
    2006-05-24 11:32:05,917 (toplink) DEBUG - execute_query
    2006-05-24 11:32:05,917 (toplink) DEBUG - DatabaseAccessor(connected)--SELECT ID, SOURCE, ASCII_NAME, STATUS, CREATED_ON, DEFINITION, MODIFIED_BY, NAME, MODI
    FIED_ON, CREATED_BY, CHEBI_ACCESSION, MERGE_TYPE, PARENT_ID FROM chebi.COMPOUNDS WHERE (ID LIKE 6126)
    2006-05-24 11:32:05,980 (toplink) DEBUG - execute_query
    2006-05-24 11:32:06,046 (handlers.DefaultExceptionHandler) ERROR - Exception [TOPLINK-6027] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): ora
    cle.toplink.exceptions.QueryException
    Exception Description: Query sent to a unactivated UnitOfWork.
    Query: ReadAllQuery(uk.ac.ebi.chebi.compounds.model.CompoundName)
    uk.ac.ebi.chebi.compounds.application.curator2.exceptions.BeanUtilException: Exception [TOPLINK-6027] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060
    118)): oracle.toplink.exceptions.QueryException
    Exception Description: Query sent to a unactivated UnitOfWork.
    Query: ReadAllQuery(uk.ac.ebi.chebi.compounds.model.CompoundName)
    LOGIN:
    public void applyLogin () {
    DatabaseLogin login = new DatabaseLogin();
    login.usePlatform( ToplinkDeploymentHelper.getPlatform(options) );
    login.setDriverClassName(options.getDriver());
    login.setConnectionString(options.getDbUrl());
    login.setUserName(options.getDbUserName());
    login.setPassword(options.getDbPassword());
    // Configuration properties.
    // login.setUsesNativeSequencing(true);
    // login.setSequencePreallocationSize(100);
    // Replace with
    login.setDefaultSequence(new NativeSequence("", 1));
    login.setShouldBindAllParameters(false);
    login.setShouldCacheAllStatements(false);
    // String binding is used when the SQL string might be too large to
    // incorporate in the Oracle Thin driver. It will give an exception of string literal
    // too long. Hence string binding should be turned on for long strings such
    // as long names
    login.setUsesStringBinding(true);
    login.useStringBinding( );
    // This specifies for large bytes to use binding to prevent the same problem
    // above and improve performance
    login.setUsesByteArrayBinding(true);
    if ( login.shouldUseByteArrayBinding() ) { // Can only be used with binding.
    login.setUsesStreamsForBinding(false);
    login.setShouldForceFieldNamesToUpperCase(false);
    login.setShouldOptimizeDataConversion(true);
    login.setShouldTrimStrings(true);
    login.setUsesBatchWriting(false);
    if ( login.shouldUseBatchWriting() ) { // Can only be used with batch writing.
    login.setUsesJDBCBatchWriting(true);
    login.setUsesExternalConnectionPooling(false);
    login.setUsesExternalTransactionController(false);
    setLogin(login);
    ImagePrecompute descriptor:
    public ClassDescriptor buildImagePrecomputeDescriptor () {
    ClassDescriptor descriptor = new ClassDescriptor();
    descriptor.setJavaClass(uk.ac.ebi.chebi.compounds.model.ImagePrecompute.class);
    descriptor.addTableName( options.getDbSchemaName().concat(".").concat("IMAGE_PRECOMPUTES") );
    descriptor.addPrimaryKeyFieldName("IMAGE_PRECOMPUTES.ID");
    descriptor.useSoftCacheWeakIdentityMap();
    descriptor.setIdentityMapSize(50);
    descriptor.useRemoteNoIdentityMap();
    //descriptor.useRemoteSoftCacheWeakIdentityMap();
    //descriptor.setRemoteIdentityMapSize(100);
    descriptor.setSequenceNumberFieldName("IMAGE_PRECOMPUTES.ID");
    descriptor.setSequenceNumberName("image_precompute_sequence");
    descriptor.setAlias("ImagePrecomputes");
    descriptor.getQueryManager().checkCacheForDoesExist();
    DirectToFieldMapping idMapping = new DirectToFieldMapping();
    idMapping.setAttributeName("id");
    idMapping.setFieldName("IMAGE_PRECOMPUTES.ID");
    descriptor.addMapping(idMapping);
    OneToOneMapping structureMapping = new OneToOneMapping();
    structureMapping.setAttributeName("structure");
    structureMapping.setReferenceClass(uk.ac.ebi.chebi.compounds.model.Structure.class);
    structureMapping.dontUseIndirection();
    structureMapping.addForeignKeyFieldName("IMAGE_PRECOMPUTES.STRUCTURE_ID", "STRUCTURES.ID");
    descriptor.addMapping(structureMapping);
    DirectToFieldMapping imageMapping = new DirectToFieldMapping();
    imageMapping.setAttributeName("image");
    imageMapping.setFieldName("IMAGE_PRECOMPUTES.IMAGE");
    TypeConversionConverter imageMappingConverter = new TypeConversionConverter(imageMapping);
    imageMappingConverter.setObjectClass(byte[].class);
    imageMappingConverter.setDataClass(java.sql.Blob.class);
    imageMapping.setConverter(imageMappingConverter);
    descriptor.addMapping(imageMapping);
    DirectToFieldMapping formatMapping = new DirectToFieldMapping();
    formatMapping.setAttributeName("format");
    formatMapping.setFieldName("IMAGE_PRECOMPUTES.FORMAT");
    descriptor.addMapping(formatMapping);
    return descriptor;
    Message was edited by:
    pmatos

    Hi,
    Thanks for replying.
    I use log4j to log my toplink info so that I can write it to a file so that is why I have no session info. If you think it is will be useful then I will try to include it in my tool so that it can be reproduced.
    In the mean time here is the stacktrace:
    Exception Description: Query sent to a unactivated UnitOfWork.
    Query: ReadAllQuery(uk.ac.ebi.chebi.compounds.model.CompoundName)
    uk.ac.ebi.chebi.compounds.application.curator2.exceptions.BeanUtilException: Exception [TOPLINK-6027] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.QueryException
    Exception Description: Query sent to a unactivated UnitOfWork.
    Query: ReadAllQuery(uk.ac.ebi.chebi.compounds.model.CompoundName)
         at uk.ac.ebi.chebi.compounds.application.curator2.controller.helper.BeanAssembler.populateCompoundBean(Unknown Source)
         at uk.ac.ebi.chebi.compounds.application.curator2.controller.search.SearchIdAction.loadCompound(Unknown Source)
         at uk.ac.ebi.chebi.compounds.application.curator2.controller.search.SearchIdAction.executeLogic(Unknown Source)
         at uk.ac.ebi.chebi.compounds.application.curator2.controller.BaseAction.execute(Unknown Source)
         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:703)
         at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
         at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
         at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
         at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056)
         at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:261)
         at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:388)
         at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:316)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: Exception [TOPLINK-6027] (Oracle TopLink - 10g Release 3 (10.1.3.0.0) (Build 060118)): oracle.toplink.exceptions.QueryException
    Exception Description: Query sent to a unactivated UnitOfWork.
    Query: ReadAllQuery(uk.ac.ebi.chebi.compounds.model.CompoundName)
         at oracle.toplink.exceptions.QueryException.querySentToInactiveUnitOfWork(QueryException.java:816)
         at oracle.toplink.publicinterface.UnitOfWork.internalExecuteQuery(UnitOfWork.java:2530)
         at oracle.toplink.publicinterface.Session.executeQuery(Session.java:981)
         at oracle.toplink.internal.indirection.QueryBasedValueHolder.instantiate(QueryBasedValueHolder.java:62)
         at oracle.toplink.internal.indirection.QueryBasedValueHolder.instantiate(QueryBasedValueHolder.java:55)
         at oracle.toplink.internal.indirection.DatabaseValueHolder.getValue(DatabaseValueHolder.java:61)
         at oracle.toplink.indirection.IndirectList.buildDelegate(IndirectList.java:184)
         at oracle.toplink.indirection.IndirectList.getDelegate(IndirectList.java:307)
         at oracle.toplink.indirection.IndirectList.size(IndirectList.java:632)
         at java.util.ArrayList.<init>(ArrayList.java:133)
         at uk.ac.ebi.chebi.compounds.model.Compound.getAllCompoundNameList(Unknown Source)
         at uk.ac.ebi.chebi.compounds.application.curator2.controller.helper.BeanAssembler.populateAllNames(Unknown Source)
         ... 51 more

  • Getting Unit Of Work without JSP context

    We are developing an application using Toplink and ADF Datacontrols. We have timer (which starts right after deploy) which reads data from magnetic card reader and stores them into database (via Toplink). Our main problem is getting Unit Of Work (server session). If user interacts with application via jsp pages, obtaining uow is done from TopLinkDataControl (getAssociatedUnitOfWork()). But timer lives on its own, it has no jsp pages to get context from.
    We know one solution - getting server session from toplink descriptor (absolute path needed) - XMLProjectReader.read("c:\\...\\toplink-deployment-descriptor.xml"). Is there another way to create Unit Of Work for our timer in order to last whole application existence? Thanks.

    I was wrong, when I thought, that XMLProjectReader.read() with absolute path works. Your solution seems to be similar, with the same result. I'll describe my problem more closely:
    - Our web apllication consists of 2 projects - Model and ViewController. Each has set the classpath pointing to classes of the opposite project.
    - The only way, that I know of starting a Clock (from Model, Runnable) without creating JSP page is instatiating it in some servlet's init() method. (Servlet has set 'Load This Servlet When the Web App is Strted" in WEB.XML).
    - When I try in my clock to create UnitOfWork by XMLProjectReader.read("c:\\...\\toplink-deployment-descriptor.xml"), I get this error:
    EXCEPTION [TOPLINK-3007] (OracleAS TopLink - 10g (9.0.4.5) (Build 040930)): oracle.toplink.exceptions.ConversionException
    EXCEPTION DESCRIPTION: The Object [mypackage.MyClass], of class[class java.lang.String] could not be converted to [class java.lang.Class]. Please ensure that the class [class java.lang.Class] is on the CLASSPATH. You may need to use alternate
    API passing in the appropriate class loader as required, or setting it
    on the default ConversionManager/
    INTERNAL EXCEPTION: java.lang.ClassNotFoundException: mypackage.MyClass
    - mypackage.MyClass is one of many classes from Model, mapped in toplink-deployment-descriptor.xml. It is in classpath of ViewController.
    - For the time being, our application runs in JDeveloper, it will be deployed to OracleAS 10g.
    Either somebody please help me how to solve above error or maybe suggest how to start my clock together with application deployment (no jsp context).
    Thanks.

  • What is the difference between Org. Unit and Work Center?

    When there are Org. Units, then what is the purpose of Work Centers? Can there be an organization without Work Centers? Or Work Centers should exist for every Org. Unit?
    How are Work Centers different from Org. Units. How can it be identified that this is Work Center and this is an Org. Unit? How should they be mapped?
    Can somebody clearly explain this?
    Points assured!
    Thanks in advance,
    Nivedita.

    When there are Org. Units, then what is the purpose of Work Centers? Can there be an organization without Work Centers? Or Work Centers should exist for every Org. Unit?
    Work Centre could be as small as a particular Desk/ cabin or as big as City...so there is no comparison of both.
    Work Centres are used to indicate if we want to specify certain relationship or restrictions based on specific location, say if I want to maintain specific incentives based on Production unit, so I can define it as Work Centre..I want to define some position for handicap person,I can restrict it on a work centre.
    Organisation Units and Work centres are independent and Org units can exist without Work Centres.
    How are Work Centers different from Org. Units. How can it be identified that this is Work Center and this is an Org. Unit? How should they be mapped?
    Work Centre "A" and Org unit "O" if you want to identify in existing structure, however if you want to define, usually we use org unit to define further structure in this where as Work centre to specify certain conditions associated with that particular location/desk.
    I hope it is clear...
    Thanks for assurance of points in advance...
    Best Wishes

  • Consume JMS Unit-Of-Work message through OSB proxy service

    Hi,
    Anyone know how to consume a JMS Unit-Of-Work (UOW) message using an OSB Proxy Service of JMS type?
    I can submit a unit-of-work JMS message (which consists of multiple constituent messages) using an OSB proxy & business service combination and setting the UOW transport headers appropriately. I can also separately produce and consume Java objects via a JMS queue where the consumption is done via OSB proxy (of java request message type), but these aren't UOW messages.
    Apparently as soon as it is a UOW message then the message consumed is an ObjectMessage ArrayList and one has to use the "Java" request message type for the JMS consumer proxy, but I'm unsure of how to create the concurrent client jar to use it in the same proxy service's JMS transport configuration in order to output the ObjectMessage ArrayList (UOW message). 
    Ideally I'd like to consume a single UOW XML message via an OSB JMS proxy service.
    Any pointers would be appreciated.
    R

    Finally got this working!!
    For posterity: Needed to insert Java Object JMS messages on the OSB JMS producer (Business Service) side with correct UOW jms transport header set in route node. Then consume the Unit-Of-Work message on the other side via jms proxy service with "java" request message type, with appropriate jar containing the Object class as the "Client jar" in the JMS Transport configuration. In the same JMS consumer proxy I had to do a java callout, passing the contents of $body, using java.util.ArrayList and javax.jms.ObjectMessage, as input into a method (.. decodeJavaMessage(ArrayList<ObjectMessage> ...)). In this java callout class you can get to each individual ObjectMessage via typecasting the get() method on the Arraylist to (ObjectMessage) and then just typecast the getObject() on this Objectmessage into your original Java Class (same as what you inserted onto queue originally).
    Hope this saves someone some time in future!

  • JMS Unit-Of-Work in OSB Proxy Service

    I'm trying to create a JMS Unit-of-Work OSB Service by populating the JMS transport user properties:
    JMS_BEA_UnitOfWork
    JMS_BEA_UnitOfWorkSequenceNumber
    JMS_BEA_IsUnitOfWorkEnd
    However, after publishing all of the messages to the Queue, JMS is not recognizing the end of the UOW.
    When I publish the last message in the UOW, I set 'JMS_BEA_IsUnitOfWorkEnd' in the transport header properties to true(). However, when I look at the last message in the queue, it shows correctly that the JMS Properties Key is 'JMS_BEA_IsUnitOfWorkEnd', the Value is 'true', but the type is 'java.lang.String.' I believe the problem could be that the type is incorrect - it should be a java.lang.Boolean. However, I cannot figure out how to make it a boolean. Can you help? Do I need a boolean here? How do I assign a boolen to the transport header? I've tried 'true', 'true()', and xs:boolean('true') and they all wind up be java.lang.String!
    Thanks.

    string value for JMS_BEA_IsUnitOfWorkEnd should work just fine.
    Make sure all messages in the same group has the same JMS_BEA_UnitOfWork value.
    you can use OSB to produce unit of work messages.
    for the consumer, you need to create a jms proxy using java type, then use a java callout to convert the message array list into xml that you can then process in a for loop.
    Edited by: jerry.sy on May 13, 2011 1:38 PM
    Edited by: jerry.sy on May 13, 2011 1:40 PM

  • Logical units of work

    I was wondering and now sure so i am asking this questions
    How many logical units of work can you have in a stored procedure?

    872959 wrote:
    I was wondering and now sure so i am asking this questions
    How many logical units of work can you have in a stored procedure?when all else fails, Read The Fine Manual!
    http://docs.oracle.com/cd/E11882_01/server.112/e25513/limits003.htm#i288032
    The limits typically range from 2000 to 3000 lines of code.
    Handle:      872959
    Status Level:      Newbie
    Registered:      Jul 16, 2011
    Total Posts:      56
    Total Questions:      32 (26 unresolved)
    why so many unanswered questions?
    Edited by: sb92075 on Dec 11, 2011 3:20 PM

  • Logical unit of work

    Hi all,
    Can help me regarding LUW(logical unit of work) and its importance in r/3 ?
    Thanks and Regards
    Ravi

    Hai Ravi Charan
    There are 3 types of LUW's available in SAP
    1)Database Transaction or DBLUW
    2)SAP      Transaction or SAPLUW
    2)ABAP     Transaction or ABAPLUW
    1) DBLUW : when it is called it locks the rows , Update the rows & commit the rows issued by auto Commit
    2) SAPLUW : collection of Business reports is called SAPLUW and Issuing the Commit
    here UPDATE,INSERT,MODIFY statements are valid
    Commit work is given by Developer Side.
    3) ABAPLUW : What ever Transaction Code we are creating is called ABAPLUW  it is belongs upon Developers
    here 3 types of updates available
    1) Bundled Updates
    2) Un-Bundled Updates
      1) Bundled Updates :
        in Bundled Updates all your updates in a single unit of work present in a PERFORM 'XYZ'
    PERFORM 'XYZ' on Commit.
    here PERFORM-kept in Buffer 'XYZ' this form having all your update statements
    Priarities of execution.
    Perform xy on comit it will execute first
    perform ab on comit it will execute second
    I want to change this execution Order
    Perform xy on comit Level 2 it will execute second
    perform ab on comit Level 1 it will execute First
    because it will depends on Level command
    Using in Function Modules
    Call Function XYZ in Update Task.
    Commit work.
    In this case it stores in a buffer once encounters the commit statement this will executes from the buffer
    so it is an asynchronos method
    2) Un Bundled Updates
    these are two types
    1) Inline Updates
    2) Buffered Inline Updates
    1) Inline Updates : INSERT,UPDATE
    when update statement found in a program then it is called inline update and you should give the 'commit work'after a update statement
    inthe inline update if you not issue a commit work the system will automatically issues the commit work.
    2) Buffered Inline Updates:
    you will buffer all your inline updates and executes after Encounter the 'COMMIT WORK'
    100
       XYZ --> we can not roll back here
    200
       ABC---> if here is using commit
    Thanks & Regards
    Sreenivasulu P

  • Logical unit of works

    Can some one tell me abt logical unit of work(LUW).

    Hi,
    A Logical Unit of Work (LUW or database transaction) is an inseparable sequence of database operations which must be executed either in its entirety or not at all. For the database system, it thus constitutes a unit.
    LUWs help to guarantee database integrity. When an LUW has been successfully concluded, the database is once again in a correct state. If, however, an error occurs within an LUW, all database changes made since the beginning of the LUW are canceled and the database is then in the same state as before the LUW started.
    An LUW begins
    o each time you start a transaction
    o when the database changes of the previous LUW have been confirmed (database commit) or
    o when the database changes of the previous LUW have been cancelled (database rollback)
    An LUW ends
    o when the database changes have been confirmed (database commit) or
    o when the database changes have been canceled (database rollback)
    Two types of LUW are:
    1)      DB LUW - A database LUW is the mechanism used by the database to ensure that its data is always consistent. A database LUW is an inseparable sequence of database operations that ends with a database commit. The database LUW is either fully executed by the database system or not at all. Once a database LUW has been successfully executed, the database will be in a consistent state. If an error occurs within a database LUW, all of the database changes since the beginning of the database LUW are reversed. This leaves the database in the state it had before the transaction started.
    2)      SAP LUW - A logical unit consisting of dialog steps, whose changes are written to the database in a single database LUW is called an SAP LUW. Unlike a database LUW, an SAP LUW can span several dialog steps, and be executed using a series of different work processes.
    More on this .
    http://help.sap.com/saphelp_nw2004s/helpdata/en/41/7af4b9a79e11d1950f0000e82de14a/frameset.htm
    Regards,
    Raghav

  • Unit of work exception

    I am doing an update all query and some inserts through the same unit of work. When trying to commit, toplink throws exception with the error message
    "Update all query not be issued within a unit of work containing other write operations".
    What is the workaround? I don't want to read all the objects I am bulk updating through update all query. Will a nested unit of work help?
    Pranab

    I believe this issue has been fixed, what version are you using?
    Perhaps try the latest release (EclipseLink 1.0 / TopLink 11g).
    Otherwise you could execute the query in a separate UnitOfWork.
    James : http://www.eclipselink.org

  • Unit of Work and cache times

    Hello!
    I've got a question concerning read queries on a Unit of Work.
    In my specific case I'm executing a ReadAllQuery on the Unit of Work getting about 7000 objects. The Performance Profiler is recording a cache time of about 900 milliseconds. If I execute this query on the Session the Profiler records a cache time of about 300 milliseconds.
    Now I'd like to know what is happening within the Unit of Work? Why does it takes longer to maintain the objects in the cache? I know that the Unit of Work spends more time overall because of the registering of the objects.
    Thanks

    The UnitOfWork is a transaction abstraction beyond the shared cache. When you read through a UnitOfWork you still perform the same operations on the shared cache and then pull the working copies into the UnitOfWork's transactional cache. This means that your 300 ms case is really just a sub-set of what is happening in your 900 ms case.
    The recommended approach is to read in the objects that you plan to use read-only through the session and then register those you may modify with a UnitOfWork. This allows you to control and optimize the transactional nature of TopLink. Reading everything through a UnitOfWork may be less complex but that complexity comes with a performance cost.
    You may want to read through our UnitOfWork primer. It explains this much better then I can here.
    http://www.oracle.com/technology/products/ias/toplink/technical/unitOfWorkWP.pdf
    Doug

  • Sequencing 3 sceanrios as one logical unit of work

    Hi,
    I have 3 business services BS1,BS2,BS3
    BS1 is source database DB1 which has 2 tables DB1_table1,DB1_table2
    BS2 is another source datbase DB2 which has one table DB2_table1
    BS3 is target database  DB3 which has 2 tables DB3_table1,DB3_table2
    And the  three scenarios are as below
    1.Data from DB1_table1 has to be inseted into DB3_table1  -
    from BS1 to BS3
    2.Data from DB1_table2 hasto be inserted into DB3_table2 -
    from BS1 to BS3
    3.Data from DB2_table1 has to be inserted into DB3_table2 -
    from BS2 to BS3
    But i want all these 3 sceanrios as one logical unit of work and 1,2,3 should be in a sequence.If any one of these fails remaining processes should fail. for ex if 1 fails 2,3 should not occur.
    How can i achieve this?
    Thanks & Regards,
    Jyothsna

    Hi,
      you can able to achive this using BPM.Check the below links for creating BPM scenarios..
    [https://weblogs.sdn.sap.com/pub/wlg/1403 [original link is broken] [original link is broken] [original link is broken]]
    [Schedule Your BPM]
    [Walkthrough with BPM]
    [The specified item was not found.]
    [RFC Scenario using BPM --Starter Kit]
    [/people/sravya.talanki2/blog/2005/08/24/do-you-like-to-understand-147correlation148-in-xi]
    [The specified item was not found.]
    [One Logical System Name for serveral BPM Acknowledgements]
    [Illustration of Multi-Mapping and Message Split using BPM in SAP Exchange Infrastructure]
    [Posting multiple IDocs with Acknowledgement]
    Regards,
    Prakasu

Maybe you are looking for

  • Questions on AP and PO Accrual Reconciliation?

    Dear all, I know the purpose of "The AP and PO Accrual Reconciliation Report" provides a transactional breakdown of each accrual account with a net balance not equal to zero in a summarized or full transaction details version. However, I found out th

  • Terrible service trying to move a phone line - Not...

    Hi, I have been with my current BT phone line for 2 years and I was very happy with the service I was receiving. Therefore I decided to move my BT line to the new property I am moving into next month. I have called up BT for house moves, which arrang

  • Alternative browsers that allow pop-ups?

    My son just got an iPad for work thinking that he could use it with a web-based utility they use in the retail auto business. He can get onto the site with Safari, but when he goes to use a tab or link, some features are not functional. For instance,

  • AA close

    We have a scenario where we would want to seperate the last month into 2 periods and would include a 13th period (20 and 10 days). This means depreciation has to run for 20 days and then for 10 days as this would be a seperate period. I would like to

  • Mysql installation notes outdated?

    Both commands /usr/bin/mysqladmin -u root password 'new-password' /usr/bin/mysqladmin -u root -h kobold password 'new-password' do not work. They say, they can't connect to the server. (I did start the deamon!) You can test the MySQL daemon with mysq