Timer created by EJB never triggered unless EJB called locally

Hi,
I'm using weblogic 5.1 service pack 6. JDK 1.2.2.
A call to a method of a stateless session EJB deployed on this server
sets up a Time Service trigger to perform an action only a few seconds
later.
Currently when I call this EJB method from a servlet on the same server
everything works as expected - the calls returns without error and a few
second later the trigger is set off and that action too completes
successfully.
However when I call the same EJB from a separate test program
(inside Forte), the EJB method appears to function perfectly - the
trigger appears to be set up correctly, the setServices and sheduleInit
and schedule methods of the Schedule object are all called, and the
setServices and triggerInit methods of the Trigger are both called. The
EJB method returns correctly.
However, in this case the Trigger is never activated.
Can anyone explain?
Thanks,
Richard.

Thank you very much, that did the trick.
Regards,
Rich.
Don Ferguson <[email protected]> wrote in message news:<[email protected]>...
This is just a guess, but try setting the timer to be a "Daemon", as in :
scheduledTrigger.setDaemon(true)
Probably what is happening is that the client has disconnected, and
resources associated with that client (including the timer) have been
reclaimed.
-Don
Richard Carr wrote:
Hi,
I'm using weblogic 5.1 service pack 6. JDK 1.2.2.
A call to a method of a stateless session EJB deployed on this server
sets up a Time Service trigger to perform an action only a few seconds
later.
Currently when I call this EJB method from a servlet on the same server
everything works as expected - the calls returns without error and a few
second later the trigger is set off and that action too completes
successfully.
However when I call the same EJB from a separate test program
(inside Forte), the EJB method appears to function perfectly - the
trigger appears to be set up correctly, the setServices and sheduleInit
and schedule methods of the Schedule object are all called, and the
setServices and triggerInit methods of the Trigger are both called. The
EJB method returns correctly.
However, in this case the Trigger is never activated.
Can anyone explain?
Thanks,
Richard.

Similar Messages

  • Error in creating new EJB Project in NWDS of CE 7.1

    Hi,
    I am trying to create one EJB application in NWDS of CE 7.1. I am getting error that some jar file is missing. I did upgrade NWDS couple of times to check weather I can get new files but still same problem. My error is:
    Project 'test' is missing required library: 'C:\<path>\SDNIDECE7110PREVIEW\IDE\eclipse\plugins\com.sap.engine.webservice.framework_2.0.0.080123091953.jar\DesigntimeAPIs\tcesiespwsrmfacade~api.jar'
    test     Build path     1234762897825     39
    Please suggest me how to solve this error.
    Thanks in advance,
    Sanjeeva

    Hi
    It might some plug-in are corrupted or missing.
    Check the following thread for help
    1[ missing required library|missing required library in NWDS 2004s SP8;
    2.[missing library files    |/message/788616#788616 [original link is broken];
    further you can change the plug-in set under C:\Program Files\SAP\IDE\CE\eclipse\plugins taking from any working NWDS.
    Let see
    Best Regards
    Satish Kumar

  • Build-time Warning for EJB DC: Package is not reserved

    Hi,
    I have created an EJB DC and added a session bean into it.
    Now while building I am getting following warning :-
    Checking package reservation
    Warning: Package com.vendor.we_kmapi.sessionbeans.kmopbessionbean is not reserved for DC : lda/sclda/we_kmapi.
    Package reservation check finished in 0 seconds
    How do I get read of this warning?
    Please help.
    Thanks and regards,
    Amey Mogare

    Hi Amey,
    I think you need to reserve name in SLD by using Name Reservation. Please try it in SLD and try to build you project.
    [Name Reservation |http://help.sap.com/saphelp_nw70/helpdata/en/df/2761930dd9b74a85198f9e48850046/frameset.htm]
    Hope it helps
    Regards
    Arun

  • Creating an EJB that has no primary key

    I want to create an EJB for a table that has no primary key using
    J-developer but I get an error like this :
    "cmp-field of type 'java.lang.Long' does not have a no-arg constructor which is needed for properties/fields based mapping"
    How can I go on?

    Sorry primitives are NOT allowed to be primary Key candidates - OOPS!
    it looks like you may have to use String
    or provide your own Primary Key class which (perhaps) extends Long

  • S:RSSDK:400 Unable to create javax.ejb.EJBObject

    Hello Guys,
       I'm trying to extract information from xPD in to BW and the error message S:RSSDK:400 Unable to create javax.ejb.EJBObject is raised during the dataload. If you have any suggestion, please let me know.
    Thanks and Regards,
    Iván.

    can anybody help to solve? rwrd pts

  • Javax ejb CreateException: Could not create stateless EJB

    Hi,
    I have a JavaEE (EJB3.0) project deployed on glassfish2.1 as -.ear (exported from eclipse3.4 to the autodeploy-folder) with -.ejb.jar, -.webui.war, general-lib-base.jar (some other...)
    The session bean is invoked by a jsf-managed bean. Have a pure annotation +@ejb+ in managed bean (identifiing the ejb-interface (+@Remote+) ...the ejb is annotated with +@stateless+
    get the following error message:
    *...nested exception is: javax.ejb.CreateException: Could not create stateless EJB*
    as beginner in the JavaEE-field I'm looking for some help concerning the possible causes.
    thank's for any comment...
    (also posted in the Enterprise JavaBeans-forum possibly better there)

    problem fixed: in the deployment-descriptor ejb-jar.xml a spezification of the session-bean hung around ...very annoying!

  • If I have an EntityBean that mappes to two tables within one database, when I create that EJB, whoes reponsibilty to generate the primary key in database table? The RDBMS or EJB?

    If I have an EntityBean that mappes to two tables within one database, when I create
    that EJB, whoes reponsibilty to generate the primary key in database table? The
    RDBMS or EJB?
    Thanks,
    JW

    Refer to http://e-docs.bea.com/wls/docs81/faq/ejb.html/#257430
    "Jingwei Zhang" <[email protected]> wrote:
    >
    If I have an EntityBean that mappes to two tables within one database,
    when I create
    that EJB, whoes reponsibilty to generate the primary key in database
    table? The
    RDBMS or EJB?
    Thanks,
    JW

  • Problem creating a EJB from third party into NWDS

    Hi everybody:
    I´m trying to create a EJB from a third party software (jar file). I imported the jar file into my EJB Module (Properties->Java Build Path->Library), selected the EJB candidate and wrote the ejb-jar.xml according to the vendor's instructions in order to define home and remote interfaces.
    When I deploy my application (containing the EJB Module), I got this error from the server:
    java.rmi.RemoteException: Cannot deploy application sap.com/TestEjbApp.. Reason: Incorrect application sap.com/TestEjbApp:Bean AccountLocateBean: the ejb-class must implement, directly or indirectly, the javax.ejb.SessionBean interface. EJB specification 7.10.2.; nested exception is: com.sap.engine.services.deploy.container.DeploymentException: <--Localization failed: ResourceBundle='com.sap.engine.services.deploy.DeployResourceBundle', ID='com.sap.engine.services.ejb.exceptions.deployment.EJBDeploymentException: Incorrect application sap.com/OlivierTestEjbApp:Bean AccountLocateBean: the ejb-class must implement, directly or indirectly, the javax.ejb.SessionBean interface. EJB specification 7.10.2.
    at com.sap.engine.services.ejb.deploy.verifier.Verifier.check(Verifier.java:66)
    at com.sap.engine.services.ejb.deploy.DeployAdmin.generate(DeployAdmin.java:253)
    at com.sap.engine.services.ejb.EJBAdmin.deploy(EJBAdmin.java:2133)
    I used the same jar in another application server (Sun Open), mounted teh EJB and it ran perfect. Additionally I checked the class and it has the correct "implements javax.ejb.SessionBean" statement in the code.
    Do you have any idea about it?
    Thanks
    Regards
    Olivier
    Message was edited by: Olivier Franco

    Hi Amol:
    Thanks for your answer, Let me explain a little more what I'm doing:
    The third party software is a jar file that contains three classes:
    com.account.AccountLocateSessionBean (Remote Interface)
    com.account.AccountLocateSessionBeanHome (Home Interface)
    com.account.AccountLocateBean (EJB class)
    This 3 classes are EJB 2.0 complaint and were tested in other J2EE container (Sun Open). I want to deploy this EJB into SAP Was J2EE 6.40 server (SP14). In my last post I wrote what I did in order to create de ejb-jar.xml into NWDS. This file looks like:
    <?xml version="1.0" encoding="UTF-8"?>
    <!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>
        <description>EJB JAR description</description>
        <display-name>EJB JAR</display-name>
        <enterprise-beans>
            <session>
                <ejb-name>AccountLocateBean</ejb-name>
                <home>com.account.AccountLocateSessionBeanHome</home>
                <remote>com.account.AccountLocateSessionBean</remote>
                <ejb-class>com.account.AccountLocateBean</ejb-class>
                <session-type>Stateless</session-type>
                <transaction-type>Container</transaction-type>
            </session>
        </enterprise-beans>
    </ejb-jar>
    Then, when I build the ear file (This is a Enterprise application that contains my EJB Module) and try to deploy this ear file into SAP Was J2EE 6.40 server (SP14) I got the exception wrote in my last post.
    Thanks for your help
    Regards
    Olivier

  • Creating  Standard EJB Descriptor (ejb-jar.xml) by JDeveloper

    Hi
    If I create a Session Bean by JDeveloper it create a weblogic-ejb-jar file (Weblogic EJB Descriptor) for it
    Do you know how can I use JDeveloper for creating Standard EJB Descriptor (ejb-jar.xml) for my Session Bean ? please if you can explain step by step
    thank you

    Hi,
    Right-click Model project and select New -> General -> Deployment Descriptors -> Java EE Deployment Descriptor and click OK, on the next screen you can choose ejb-jar.xml.
    Pedja

  • Unable to create javax.ejb.EJBObject

    I go to the http://host:port/caf ->User Interface Configuration -> Configuration Browser ->Object Editor -> New Configuration->and push button select service, or administrative tools ->authorization tool. On this functionalities i get the same error
    The initial exception that caused the request to fail, was:
       com.sap.caf.rt.exception.CAFBaseRuntimeException: Service manager initialization failed Illegal argument exception: Unable to create javax.ejb.EJBObject.
    All services in Visual Admin i have started. Who can help?

    can anybody help to solve? rwrd pts

  • EJB call from one domain to another, authentication problem

    Two Weblogic servers. WLS A and WLS B. Different domains. Trust relationship between the domains can't be established.
    I have an EJB in WLS B and there is a Web Application deployed to WLS A. There are method-permission declarations in the EJB descriptor xml.
    Step 1. User authenticates to Servlet in Web Application (WLS A). Authentication is done with Http Basic Authentication.
    Step 2. Servlet makes a JNDI lookup to get a handle to the EJB. Handle can not be fetched with the authentication information which was provided by user to servlet. This means that I need to specify a different username and password, which should be used for authentication at WLS B.
    Step 3. After getting a handle to the EJB Servlet calls a method of the EJB.
    Everything seems extremely simple. And it should be. But no.
    At step 2 servlet propagates authentication information from WLS A to WLS B. This authentication information is valid only inside WLS A, not in WLS B. Result: SecurityException: Invalid Subject.
    Setting SECURITY_PRINCIPAL and SECURITY_CREDENTIALS to InitialContext while creating it still results in propagation of authentication information. Same exception.
    So I tried something else.
    Tthe code doing the JNDI lookups and EJB calls was wrapped inside Security.runAs(new Subject(), ....) -block. Authentication information is no longer propagated to WLS B. So JNDI lookup succeeds, excellent!
    But we only got one step further. Now we still need to make the call to EJB method at step 3.
    Now that EJB method call results in Security Violation: User: <anonymous> has insufficient permission to access my method.
    It's a bit strange, because username and password (for WLS B) were provided for InitialContext while creating it. If the password is invalid, the InitialContext can't be created. So it seems that atleast the username and password ARE checked at WLS B.
    Any help and/or suggestions would be highly appreciated.
    Here is a misc list of some misc wondering:
    -Step 2. Should we make the JNDI lookup to JNDI tree of WLS A instead of WLS B. If we do so, then we should use ejb-ref's at web.xml. This was also quickly tested with no results.
    -Would run-as-identity (or some similar element) help? Maybe we could set up some Credential Mapper to WLS A, which would provide username/password when making calls to EJB's of WLS B. Documentation about Credential Mappers seems to be quite useless.

    There was a time, and it was quite some time ago when something similar was tried and it didn't meet with much success. Sure, it may not have been Domain files, it may have been something more like, say, rocks, but the general principle still applies. If you look at the XML and media parts that make up a Domain file, you can think of those pieces as analogous to the atoms in your average run-of-the-mill rock. Though the atoms in two given average run-of-the-mill rocks may seem quite similar, and cracking them open reveals innards that are almost entirely, but not quite, the same, it's still quite difficult to make one whole rock out of the two.
    Now, some say alchemists might be able to accomplish this quite daunting task, but, until a study of use for Domain files (perhaps XMLchemy?) is initiated and studied most earnestly, we shall probably remain unable to bring about the union of one Domain file and another. Or were we talking about the rocks? (You can't melt Domain files, can you? The thought just hit me is all...)
    How's that for a long answer?

  • A dynamic table based on run-time created view object -- please help!

    Hello!
    I'm trying to create a dynamic table based on an run-time created view object. All go ok, but table binding component take the first view/iterator state and don't reflect changes they have. Please, take a look:
    1. At run-time the view is being replaced by new red-only one based on query in application module:
    getQueryView().remove();
    createViewObjectFromQueryStmt("QueryView", statement);
    2. Page definition file contains an iterator (using iterator or methodIterator - doesn't matter) binding and table, which binds to the iterator, like:
    <methodIterator id="distributeQuery1Iter" Binds="distributeQuery1.result"
    DataControl="QueryServiceDataControl" RangeSize="10"/>
    <table id="distributeQuery11" IterBinding="distributeQuery1Iter"/>
    3. The page code uses <af:table>. But, if I use table binding (it's right) like this:
    <af:table var="row" value="#{bindings.distributeQuery11.collectionModel}">
    <af:forEach items="#{bindings.distributeQuery11.attributeDefs}" var="def">
    the table will never changed (i.e. still show the first view instance).
    When I tried to use iterator binding directly (it's bad and cannot provide all needed features unlike CollectionModel from table binding) I saw that table works!
    (Code is somehing like:
    <af:table var="row" value="#{bindings.myIterator.allRowsInRange}">
    <af:forEach items="#{bindings.myIterator.attributeDefs}" var="def">
    Why the table binding do not reflect changes in iterator? Or should I use different approach?
    Thanks in advance!
    Ilya.

    I got it to work! I used a hybrid approach comprised of some of your code and some of Steve Muench's AcceessAppModuleInBackingBean example.
    In the setBindings method, I execute an app module method that redefines the query, then I used your code to delete and recreate bindings and iterator:
    public void setBindingContainer(DCBindingContainer bc) {
    this.bindingContainer = bc;
    rebuildVO();
    The rebuildVO() method looks like the code you provided in your example:
    private void rebuildVO() {
    DCDataControl dc;
    DispatchAppModule dApp;
    DCBindingContainer bc;
    DCIteratorBinding it;
    OperationBinding operationBinding;
    ViewObject vo;
    DCControlBinding cb;
    try {
    bc = getBindingContainer();
    dc = bc.findDataControl(DATACONTROL);
    dApp = (DispatchAppModule)dc.getDataProvider();
    // Execute App Module Method to rebuild VO based upon new SQL Statement.
    dApp.setDispatchViewSQL();
    vo = dApp.findViewObject(DYNAMIC_VIEW_NAME);
    it = bc.findIteratorBinding(DYNAMIC_VO_ITER_NAME);
    it.bindRowSetIterator(vo, true);
    // logger.info("Remove value binding...");
    cb = bc.findCtrlBinding(DYNAMIC_VIEW_NAME);
    cb.getDCIteratorBinding().removeValueBinding(cb);
    bc.removeControlBinding(cb);
    // logger.info("Creating new value binding...");
    FacesCtrlRangeBinding dynamicRangeBinding =
    new FacesCtrlRangeBinding(null,
    bc.findIteratorBinding(DYNAMIC_VO_ITER_NAME), null);
    // logger.info("Add control binding...");
    bc.addControlBinding(DYNAMIC_VIEW_NAME, dynamicRangeBinding);
    } catch (Exception e) {
    e.printStackTrace();
    And my App Module method that redefines the view object looks like this:
    public void setDispatchViewSQL() {
    String SQL =
    "begin ? := PK_BUsiNESS.F_GETDISPATCHVIEWSQL();end;";
    CallableStatement st = null;
    String ViewSQL = null;
    try {
    st = getDBTransaction().createCallableStatement(SQL,
    DBTransaction.DEFAULT);
    * Register the first bind parameter as our return value of type LONGVARCHAR
    st.registerOutParameter(1, OracleTypes.LONGVARCHAR);
    st.execute();
    ViewSQL = ((OracleCallableStatement) st).getString(1);
    findViewObject(DYNAMIC_VO_NAME).remove();
    ViewObject vo = createViewObjectFromQueryStmt(DYNAMIC_VO_NAME, ViewSQL);
    vo.executeQuery();
    } catch (SQLException s) {
    throw new JboException(s);
    } finally {
    try {
    st.close();
    } catch (SQLException s) {
    s.printStackTrace();
    When I run it I get my desired results. One thing I don't quite understand is why when the page is first rendered it shows the last set of records rather than the first. Now I have to figure out how to put navigation URLS in each of the table cells.
    Thanks for your help; I would not have gotten this far without it,
    Jeff

  • How create mail alert without triggering the event.

    1.     SR 3-4924626351: How create mail alert without triggering the event.
    We wanted to send alert mail every 10 days or 15 days or 1 month to a reporting manager of Opportunity Owner with details of that Opportunity. I don’t want to use any triggering of event like the Following. When new opportunity is created When modified Opportunity is saved etc.

    Raju,
    If you don't want to use the triggering event, you will have to do this manually.
    Manually:
    - Create a Web Link on the SR with and embed the mailto: function with the receivers email and subject and body embedded in the url (you can find this link on Google)
    - When this link is clicked, an email window will open with all the details you provide, and you can click the send button to send the email.
    - You will have to do this manually every 10-15 days or whatever is the duration
    Auto:
    - Create a time based workflow on a new Opportunity Created event
    - create a action to send an email notification to the concerned person (details in the workflow properties)
    - This workflow will auto send an email every 10-15 days to the opportunity Manager.
    The time based workflow is the best option I see. Do you see any issue/ concerns with auto generated emails?
    Hope this helps!
    Royston

  • WLDF - Instrumentation for EJB call statistics

    Hello,
    I'm new with Weblogic and I'm looking for stats concerning my ejbs. I'm using weblogic 10.3.
    With JMX I have only found data concerning EJB pool size but no statistics (like execution time)
    thus, I'm looking for instrumentation using WLDF to see if it is possible to get the execution time of an EJB method.
    Firstly, I try to instrument a method, i've used the following weblogic-diagnostic.xml file.
    <wldf-resource xmlns="http://www.bea.com/ns/weblogic/90/diagnostics">
         <instrumentation>
         <enabled>true</enabled>
         <include>com.gemalto.*</include>
         <wldf-instrumentation-monitor>
         <name>ConfigurationManagerBean_Monitor</name>
    <enabled>true</enabled>
         <action>DisplayArgumentsAction</action>
    <location-type>before</location-type>
    <pointcut>execution(public * com.xxx.* get*(...))</pointcut>
         </wldf-instrumentation-monitor>
         </instrumentation>
    </wldf-resource>
    When I put this file into my MEAT-INF EAR, the deploying is OK but I'cant see nothing into WLDF console extension ?
    Could you please explain me a little bit how to configure correctly my instrumentation ?
    Thank you a lot.
    C.

    When I put this file into my MEAT-INF EAR, the deploying is OK but I'cant see nothing into WLDF console extension ?Are there events in the WLDF Archive for the deployed monitor? Have you enabled Instrumentation through a WLDF System Resource targeted to the server?
    In order to view instrumentation data through the console extension,
    - the WLDF DyeInjection monitor needs to be deployed through the WLDF SystemResouce at server scope as well.
    - the application monitors must be of the "Around" type with the TraceElapsedTimeAction assigned to them
    Then the console extension can build a call-tree of known requests that have passed through the server, based on each request's Diagnostic Context ID.
    If you truly want to view information from the DisplayArgumentsAction, you will need to view the data stored in the WLDF Archive using the WLS Console, or WLST. In the Console, you can view the data by navigating to Diagnostic Modules -> Logs and selecting the EventsDataArchive "log". On the resulting page you can customize your views (the default view only shows you the last 5 minutes of data in the archive, I believe).
    Using WLST you can use the exportDiagnosticData (offline) or exportDiagnosticDataFromServer (online) functions. See the WLST help on these functions for details on how to use them.
    Mike

  • ADF 11, USING EJB, CALL STORE PROCEDURE, A PROBLEAM?

    ADF 11, USING EJB, CALL STORE PROCEDURE, A PROBLEAM?
    I have a store procedure:
    CREATE OR REPLACE PACKAGE BODY PK_HR1
    IS
    FUNCTION FUNC04
    RETURN CUR_RESULT
    IS
    X_CUR CUR_RESULT;
    BEGIN
    OPEN X_CUR FOR
    select mako, tenko, diachiko from kho;
    RETURN X_CUR;
    EXCEPTION
    WHEN OTHERS THEN
    RAISE;
    END FUNC04;
    END PK_HR1;
    In the entities class, I have a NamedStoredProcedureQuery:
    @Entity
    @NamedStoredProcedureQuery(name="Kho.FUNC04",
              resultClass=Kho.class,
              procedureName="PK_HR1.FUNC04" )
    public class Kho implements Serializable {
    In session bean, i have a method
    public class SessionEJBBean implements SessionEJB, SessionEJBLocal
    public void test() throws Exception{
    try {
    //code here ...
    List<Kho> listKho = em.createNamedQuery("Kho.FUNC04").getResultList();
    System.out.println("aaaa");
    } catch (Exception ex) {
    ex.printStackTrace();
    } finally {
    I try running, but always show errror
    this errors:
    Internal Exception: java.sql.SQLException: ORA-06550: line 1, column 7:
    PLS-00221: 'FUNC04' is not a procedure or is undefined
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    Error Code: 6550
    Call: BEGIN PK_HR1.FUNC04(); END;
    Query: ReadAllQuery(jp.co.mfr.sgs.bean.Kho)
    help help me?

    You need to use a CallableStatement for this.
    --olaf                                                                                                                                                                                                           

Maybe you are looking for

  • Need extra field in S_ALR_87013611 report

    Hi There, I want to modify report S_ALR_87013611. I want to add one column for object currency. I think S_ALR_87013611 reports using planning layout 1-157 (standard report). I want to customize this standard report and create variant for users so the

  • Java.sql.SQLException: Error while trying to retrieve text for error ORA-24

    Hi All, Am having serious problem with ORA-24327 and the behavior is very very unpredictable. I have couple of environment where the same error comes in different context. The recent one was surprising. I have describe bellow the environment configur

  • Using a second computer (an iMac) as an extended desktop monitor

    Hello I have a powerbook g4 and would really like to use a separate older iMac as an extended desktop. Is there a way to turn the iMac into just a monitor recognized by my powerbook?

  • Can't uninstall or install any Blackberry software?

    I just loaded in my disk for the Blackberry User Tools, and therefore it installed the Desktop Manager, Device Manager and the Media Manager. Since this, I uninstalled Roxio Media because I didn't want the program, and now nothing works. When I try t

  • CP8 Eyedropper in Properties Panel

    This seems odd. Changing a color from the properties panel doesn't use your color swatches. It uses some default. So then using the eyedropper tool to select a color from your swatches panel not only selects the color but then also changes the color