EJBs From JSPs - Tutorials?

Hi all,
I've just been given a task, and I don't know where to start. I've been given an EJB and I need to write a web front end to test it (JSP). Now if it was a plain JavaBean, I know how to do it. But I know EJB's are different.
Could somebody point me in the direction of a good tutorial about accessing EJBs from JSPs. I'm using WebLogic as my application server, so something relevant to that would be nice.
Cheers for any help.

To put it in "idiot" terms:
Think of your EJBs as people you want to ring up on the phone. You know their name, but not their number. How do you do this in real life? You use a phone book, using the person's name as a reference, which will lead you to the right number to dial.
The phonebook in this paradigm is JNDI - the naming and directory interfaces.
The name you use to look up is how the EJB is bound (ie, "java:comp/env/ejb/MyPerson", or "foo/bar/beans/MyPerson"). You define this name (the phone number) in the deployment descriptors packaged with the EJBs in the jar file.
You access the phone book (in your JSP or some other bean in your webapp) by using a Context.
ie:
Object objRef = initialContext.lookup("foo/bar/beans/MyPerson");
Then you ask the context for the person's home information:
MyPersonHome home = (com.foo.interfaces.MyPersonHome)PortableRemoteObject.narrow(objRef, com.foo.interfaces.MyPersonHome.class);
Once you know where they live (you have their Home information), you can ring them up (create them, search for them, search for a singular one)
MyPerson bill = home.findByPersonNameInHouse("billy");
once you have Billy in your possession, yu can perform business logic on him:
String stats = bill.getStatistics();
// get rid of bill permanently
bill.remove();
That should be enough of an introductory paradigm. You will need to follow along the tutorials and other many documents to understand exactly how things are bound (phone numbers are listed) and so forth.
Good luck!

Similar Messages

  • Calling EJB from JSP in SSL Mode

    Hi,
    I need to call an EJB from JSP in SSL Mode.
    How can i do that.
    Regards,
    S.V.Satish Kumar

    In that case you can refer to the following documents:
    Using JPA: http://help.sap.com/saphelp_nwce711/helpdata/en/44/eba6292f446c30e10000000a114a6b/frameset.htm
    Accessing persistence functionality in EJB 3.0: http://help.sap.com/saphelp_nwce711/helpdata/en/46/307a2a50094f09e10000000a114a6b/frameset.htm
    Tell me, if these documents help you. Otherwise, I will search for more information on the topic.
    Best regards,
    Ekaterina

  • Calling an EJB from jsp - ServletException

    I am unable to call an EJB from jsp, unless I put the actuall classes of
              the EJB into the classpath. Is this the right way to do it?
              The exception is:
              Servlet failed with ServletException
              javax.servlet.ServletException: Servlet class: 'jsp_servlet._result'
              could not be loaded - the requested class wasn't found in the
              classpath:
              '/local/apps/bea/wlserver6.0/config/gmodomain/applications/.wl_temp_do_not_delete/wl_local_comp34107.war:/local/apps/bea/wlserver6.0/./config/gmodomain/applications/.wl_temp_do_not_delete/WEB-INF/_tmp_war_gmo_gmo_webwar:/local/apps/bea/wlserver6.0/config/gmodomain/applications/.wl_temp_do_not_delete/WEB-INF/_tmp_war_gmo_gmo_webwar'
              at
              weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:532)
              at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:191)
              at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:148)
              at
              weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:306)
              at
              weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:208)
              at
              weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:246)
              at
              weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:1265)
              at
              weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:1622)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              where result.jsp is the jsp page calling the EJB. I did an import of the
              EJB classes in the jsp.
              like i said, it works if I put the bean classes in the classpath. But is
              it right?
              if I have these in the exploded format, do I need to put anything in the
              application web.xml under:
              wlserver6.0/config/gmodomain/applications/DefaultWebApp_gmo/WEB-INF ?
              redhat 6.2, wl6.0sp1
              here are the xml files:
              web.xml:
              <?xml version="1.0"?>
              <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
              2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
              <!--
              $Id: web.xml,v 1.2 2001/03/14 22:23:03 jeff Exp $
              $Source:
              /usr/local/cvsroot/JUnitEE/example/components/web-war/WEB-INF/web.xml,v
              $
              -->
              <web-app>
              <display-name>My Web Application</display-name>
              <description>none</description>
              <ejb-ref>
              <ejb-ref-name>MyWeb</ejb-ref-name>
              <ejb-ref-type>Session</ejb-ref-type>
              <home>com.blah.ejb.myweb.WyWebHome</home>
              <remote>com.blah.ejb.myweb.MyWeb</remote>
              </ejb-ref>
              </web-app>
              weblogic.xml:
              <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web
              Application 6.0//EN"
              "http://www.bea.com/servers/wls600/dtd/weblogic-web-jar.dtd">
              <weblogic-web-app>
              <jsp-descriptor>
              <jsp-param>
              <param-name>
              pageCheckSeconds
              </param-name>
              <param-value>
              1
              </param-value>
              </jsp-param>
              <jsp-param>
              <param-name>
              verbose
              </param-name>
              <param-value>
              true
              </param-value>
              </jsp-param>
              <jsp-param>
              <param-name>compileCommand</param-name>
              <param-value>/local/apps/jdk1.3.0_02/bin/javac</param-value>
              </jsp-param>
              </jsp-descriptor>
              <reference-descriptor>
              <ejb-reference-description>
              <ejb-ref-name>MyWeb</ejb-ref-name>
              <jndi-name>MyWeb</jndi-name>
              </ejb-reference-description>
              </reference-descriptor>
              </weblogic-web-app>
              thanks,
              Gary
              

    Did you package your JSPs in a WAR and your EJBs in a JAR and package the
              WAR and JAR in an EAR? That is how to do it in 6.0. Works well.
              Peace,
              Cameron Purdy
              Tangosol, Inc.
              http://www.tangosol.com
              +1.617.623.5782
              WebLogic Consulting Available
              "gmo" <[email protected]> wrote in message
              news:[email protected]...
              > I am unable to call an EJB from jsp, unless I put the actuall classes of
              > the EJB into the classpath. Is this the right way to do it?
              > The exception is:
              > Servlet failed with ServletException
              > javax.servlet.ServletException: Servlet class: 'jsp_servlet._result'
              > could not be loaded - the requested class wasn't found in the
              > classpath:
              >
              '/local/apps/bea/wlserver6.0/config/gmodomain/applications/.wl_temp_do_not_d
              elete/wl_local_comp34107.war:/local/apps/bea/wlserver6.0/./config/gmodomain/
              applications/.wl_temp_do_not_delete/WEB-INF/_tmp_war_gmo_gmo_webwar:/local/a
              pps/bea/wlserver6.0/config/gmodomain/applications/.wl_temp_do_not_delete/WEB
              -INF/_tmp_war_gmo_gmo_webwar'
              >
              > at
              >
              weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.jav
              a:532)
              >
              > at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:191)
              >
              > at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:148)
              >
              > at
              >
              weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:30
              6)
              >
              > at
              >
              weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
              :208)
              >
              > at
              >
              weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
              :246)
              >
              > at
              >
              weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
              ntext.java:1265)
              >
              > at
              >
              weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
              :1622)
              >
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
              >
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              >
              > where result.jsp is the jsp page calling the EJB. I did an import of the
              > EJB classes in the jsp.
              > like i said, it works if I put the bean classes in the classpath. But is
              > it right?
              > if I have these in the exploded format, do I need to put anything in the
              > application web.xml under:
              > wlserver6.0/config/gmodomain/applications/DefaultWebApp_gmo/WEB-INF ?
              >
              > redhat 6.2, wl6.0sp1
              >
              > here are the xml files:
              > web.xml:
              >
              > <?xml version="1.0"?>
              > <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
              > 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
              >
              > <!--
              > $Id: web.xml,v 1.2 2001/03/14 22:23:03 jeff Exp $
              > $Source:
              > /usr/local/cvsroot/JUnitEE/example/components/web-war/WEB-INF/web.xml,v
              > $
              > -->
              >
              > <web-app>
              > <display-name>My Web Application</display-name>
              > <description>none</description>
              > <ejb-ref>
              > <ejb-ref-name>MyWeb</ejb-ref-name>
              > <ejb-ref-type>Session</ejb-ref-type>
              > <home>com.blah.ejb.myweb.WyWebHome</home>
              > <remote>com.blah.ejb.myweb.MyWeb</remote>
              > </ejb-ref>
              > </web-app>
              >
              > weblogic.xml:
              >
              > <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web
              > Application 6.0//EN"
              > "http://www.bea.com/servers/wls600/dtd/weblogic-web-jar.dtd">
              > <weblogic-web-app>
              > <jsp-descriptor>
              > <jsp-param>
              > <param-name>
              > pageCheckSeconds
              > </param-name>
              > <param-value>
              > 1
              > </param-value>
              > </jsp-param>
              > <jsp-param>
              > <param-name>
              > verbose
              > </param-name>
              > <param-value>
              > true
              > </param-value>
              > </jsp-param>
              > <jsp-param>
              > <param-name>compileCommand</param-name>
              > <param-value>/local/apps/jdk1.3.0_02/bin/javac</param-value>
              > </jsp-param>
              > </jsp-descriptor>
              > <reference-descriptor>
              > <ejb-reference-description>
              > <ejb-ref-name>MyWeb</ejb-ref-name>
              > <jndi-name>MyWeb</jndi-name>
              > </ejb-reference-description>
              > </reference-descriptor>
              > </weblogic-web-app>
              >
              > thanks,
              >
              > Gary
              >
              >
              

  • Calling EJB from JSP

    Hi - I'm running OC4J 9.0.2 on windows 2000
    I have a JSP that accepts user inputs and the call respective Servlets. Before the servlet gets called, I want to log a tracing event with an EJB(Stateless Session Bean).
    I have manipulated the "form" values with JavaScript but cannot find any docs on how to call an EJB from JavaScript in a JSP.
    The JSP and EJB works fine on there own. How do I get the "form" values into the EJB variables without JavaScript?
    The EJB logs fine while still in the "JAVA" part of the JSP but I don't know how to extract these 2 index values.
    Tks
    Andre
    Here is extract of code:
    <%@ page language="java" contentType="text/html;charset=windows-1252"%>
    <%@ page language="java" import="java.io.*"%>
    <%@ page language="java" import="java.util.*"%>
    <%@ page language="java" import="javax.naming.*"%>
    <%@ page language="java" import="javax.rmi.*"%>
    <%@ page language="java" import="WizardEvents.WizEventLog.*"%>
    <HTML>
    <HEAD>
    <BODY background="/wp/Background.gif">
    <script language="JavaScript">
    // build timer to display at bottom of screen for debugging of screen dumps
    function display_time()
    var da = new Date();
    var dd = da.getDate('DD');
    var dm = da.getMonth('MON')+1;
    var dy = da.getYear('YYYY');
    var h = da.getHours();
    var m = da.getMinutes();
    if (m < 10)
    m = "0" + m;
    var t = dy+"\-"+dm+"\-"+dd+" "+h+":"+m;
    defaultStatus = t;
    setTimeout("display_time()",60000); // one minute
    return true;
    function registerEvent()
    var menuItem = document.selRequest.selCategory.selectedIndex;
    var serviceOption = document.selRequest.serviceOption.selectedIndex;
    // now invoke EJB to log event
    alert("selected menu option is "+menuItem+" and service option "+serviceOption);
    return true;
    // get the value from the categories and build up list of the options...
    function buildItems()
    // alert("Building items");
    // get the index (starting with 0) of the categories selection
    var menuItem = document.selRequest.selCategory.selectedIndex;
    // reset the values for the options selection to 0
    document.selRequest.serviceOption.length=0;
    // define new array to hold options for transfer to selection item
    newOptions = new Array;
    // Now check which menu option, build list
    var newLength = 0;
    switch(menuItem)
    case 0:
    newLength = 1;
    newOptions[0] = new Option("No Service Option",0,false,false);
    break;
    case 1:
    newLength = 1;
    newOptions[0] = new Option("No Service Option",0,false,false);
    break;
    case 2:
    newLength = 1;
    newOptions[0] = new Option("No Service Option",0,false,false);
    break;
    case 3:
    newLength = 1;
    newOptions[0] = new Option("No Service Option",0,false,false);
    break;
    case 4:
    newLength = 1;
    newOptions[0] = new Option("No Service Option",0,false,false);
    break;
    case 5:
    newLength = 5;
    newOptions[0] = new Option("All wallet and airtime balance",0,true,true);
    newOptions[1] = new Option("Airtime balance",1,false,false);
    newOptions[2] = new Option("SMS-a-lot balance",2,false,false);
    newOptions[3] = new Option("Call Extender balance",3,false,false);
    newOptions[4] = new Option("Per Second Billing balance",4,false,false);
    break;
    case 6:
    newLength = 2;
    newOptions[0] = new Option("Subscriber data - Channel Provisioning Options",8,true,true);
    newOptions[1] = new Option("IBS Pending Transaction Inquiry",9,false,false);
    break;
    default:
    newLength = 1;
    newOptions[0] = new Option("No Service Option - Default",0,false,false);
    break;
    var serviceOption = document.selRequest.serviceOption;
    // transfer array to select statement
    for (var i=0; i < newLength; i++)
    serviceOption.options[i] = newOptions;
    </script>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252">
    <TITLE>Wizard Prepaid Interface</TITLE>
    <%----%>
    <BODY text="#FFFFFF" bgcolour="#ffffff" bgcolor="#3c698a" onload="display_time();" >
    <H2 ALIGN=Center>Wizard Prepaid Interface</H2>
    <PRE>
    <%
    java.util.Enumeration params=request.getParameterNames();
    StringBuffer urlBuf = request.getRequestURL();
    String urlValue = urlBuf.toString();
    int colPos = urlValue.indexOf(":8888");
    String serverName = urlValue.substring(0,colPos+5);
    String paramValues1[] = request.getParameterValues("event_ref_no");
    String eventRefNo = paramValues1[0];
    String paramValues2[] = request.getParameterValues("msisdn_no");
    String msisdnNo = paramValues2[0];
    String paramValues3[] = request.getParameterValues("operator_id");
    String operatorId = paramValues3[0];
    String paramValues4[] = request.getParameterValues("wizDB");
    String wizDB = paramValues4[0].toLowerCase();
    // set session values into session object
    session.removeAttribute("eventRefNo");
    session.removeAttribute("msisdnNo");
    session.removeAttribute("operatorId");
    session.removeAttribute("wizDB");
    session.removeAttribute("serverName");
    session.setAttribute("eventRefNo",eventRefNo);
    session.setAttribute("msisdnNo",msisdnNo);
    session.setAttribute("operatorId",operatorId);
    session.setAttribute("wizDB",wizDB);
    session.setAttribute("serverName",serverName);
    session.setAttribute("eventOpenCount","0");
    session.setAttribute("errorString","No errors encountered yet");
    // now build ref to lookup event log EJB
    WizardEvents.WizEventLog eventBean;
    Context ctx = new InitialContext();
    Object homeObject=ctx.lookup("WizEventLog");
    WizardEvents.WizEventLogHome home =
    (WizardEvents.WizEventLogHome)PortableRemoteObject.narrow(homeObject, WizardEvents.WizEventLogHome.class);
    eventBean=(WizardEvents.WizEventLog)PortableRemoteObject.narrow(home.create(),
    WizardEvents.WizEventLog.class);
    int eventRefNoInput = Integer.parseInt(eventRefNo);
    int operatorIdInput = Integer.parseInt(operatorId);
    long msisdnNoInput = Long.parseLong(msisdnNo);
    int callCatCodeInput = 177;
    int callCatItemCodeInput = 2;
    String machineName = "WEB";
    String moduleName = "WIZARDPREPAID.JSP";
    String[] resArray = null;
    // event logging EJB
    resArray = eventBean.setEventDetail(eventRefNoInput,
    operatorIdInput,
    callCatCodeInput,
    callCatItemCodeInput,
    machineName,
    moduleName,
    wizDB);
    %>
    </PRE>
    <%--
    // check if data passed is valid
    --%>
    <jsp:include page="/servlet/CheckValidURL" flush="true"></jsp:include>
    <%
    if (session.getAttribute("eventOpenCount").equals("1"))
    %>
    <H3 ALIGN=CENTER>MSISDN = <%=msisdnNo%></H3>
    <HR>
    <H4 ALIGN=CENTER>Prepaid Query History</H4>
    <%--
    onclick can empty the service options field
    --%>
    <TABLE>
    <TD>Enter request target :</TD>
    <%--action="/wp/servlet/ValidateParamsClass"--%>
    <FORM name="selRequest" method="POST" >
    <TD><SELECT name="selCategory" onchange="buildItems()" >
    <OPTION value="Prepaid Cards Loaded">Prepaid Cards Loaded</OPTION>
    <OPTION value="Prepaid Recycle History">Prepaid Recycle History</OPTION>
    <OPTION value="Prepaid Failed Recharges">Prepaid Failed Recharges</OPTION>
    <OPTION value="Prepaid Access4Life Status">Prepaid Access4Life Status</OPTION>
    <OPTION value="Prepaid Number4Life Status">Prepaid Number4Life Status</OPTION>
    <OPTION value="IBS Balance Inquiry">IBS Balance Inquiry</OPTION>
    <OPTION value="IBS Subscriber Data Inquiry">IBS Subscriber Data Inquiry</OPTION>
    </SELECT>
    </TD>
    </TABLE>
    <%--
    Build the possible service options for IBS depending on selection
    Create selection list and then assign default value of none
    --%>
    <TABLE>
    <TD>Possible Service Options:</TD>
    <TD><select name="serviceOption">
    <option value="">No option available</option>
    <SCRIPT>
    // re-build items to cater for FORWARD/BACK buttons, etc
    buildItems();
    </SCRIPT>
    </TD>
    </TABLE>
    <%--
    --%>
    <%--
    --%>
    <INPUT type="submit" value="Query Prepaid Systems" onclick="registerEvent()" >
    </FORM>

    Hi Christian,
    A few questions to clarify where the cause of the problem might be:
    1. When you run the JSP app in JDeveloper, are you connecting to the remotely deployed app module, or the local one in your workspace?
    2. In your JSP project, there is an appmodule.properties file. This file should specify the connection mode to use to connect to your EJB (ConnectMode=EJB), and should be deployed to a directory on your webserver's classpath, along with the connections.properties file. If the appmodule.properties file contains the wrong connectmode setting, or is not on the classpath for the webserver, this might be the cause.
    Let us know.

  • Updating EJBs from JSPs

    i'm looking for a way to udpdate several entity beans via a stateful session controller.
    I can create references to the ejb controller in the JSP without a problem, but i need to know how to accept data entered into a form, store it temporarly and then call a ejb controller method using the form data as the arguments.
    i have seen the use of javabeans in this type of situation but i have limited time and i'm trying to avoid having to create event logic to signify that the javabeans' properties have been altered.
    ideally i would like to use the data entered into the form as arguments in a direct call to the ejb controller method.
    any advice would be appreciated!!!
    Thanks,
    Student with a deadline!

    Hi,
    You can get the instance of any bean inside the jsp as long as you have the correct url of the application server and ejb jndi name. Once you created the EJb instance, you can pass those form data, which you have to get using getParameter() or from httpsession and call the ejb as if you are calling EJB from normal java program.
    Hope that helps.
    Best Luck!
    Senthil Babu
    Developer Technical Support
    SUN Microsystems
    http://www.sun.com/developers/support/

  • How can I call EJB from JSP/Servlets in iWS?

    Hi!!
    My JSP/Servlets are on iWS, and I deploy EJB on iAS.
    In this case, I don't know how JSP/Servlet call EJb on iAS.
    I'd like to know how I can set JNDI name in JSP/Servlet on iWS.
    I will thank you if you give me a simple example source using JSP/Servlet
    and EJB.
    Thanks in advance!!!
    - Park-

    Park,
    Why Are you running your JSP/Servlets in iWS instead of iAS? For whatever
    reason,
    look at the Converter sample from iAS. You will be doing RMI/IIOP in this
    case and the sample explains in detail what to do.
    hth,
    -robert
    "SungHyun, Park" <[email protected]> wrote in message
    news:9jpfmt$[email protected]..
    Hi!!
    My JSP/Servlets are on iWS, and I deploy EJB on iAS.
    In this case, I don't know how JSP/Servlet call EJb on iAS.
    I'd like to know how I can set JNDI name in JSP/Servlet on iWS.
    I will thank you if you give me a simple example source using JSP/Servlet
    and EJB.
    Thanks in advance!!!
    - Park-

  • How to lookup an EJB from JSP on a Remote Server in JES2005Q4

    Hi,
    I am having two different domain (domain1,domain2) respectvely. My ABC.ear j2eee application is deployed on domain2 and its iiop port is 33703.In domain1 i have xyz.war (web application) and it's IIOP port is 3700 .In xyz.war i am having CallEJB.jsp file.In this Jsp file i want to lookup an EJB Service called PaymentEJB(JNDI Name is ejb/PaymentEJB).
    The code is below
    InitialContext context=new InitialContext();
    Object objRef=context.lookup("corbaname:iiop:andaman:33703#ejb/PaymentEJB");
    I am getting the following error.
    [#|2005-12-14T16:42:03.422+0530|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.corba._DEFAULT_.rpc.transport|_ThreadID=11;|"IOP00410216: (COMM_FAILURE) Unable to create IIOP listener on the specified host/port: all interfaces/3700"
    org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 216 completed: No
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2661)
    My doubt is
    1.While starting domain1 and domain2 iiop listeners are started on the port 3700 and 33703.in that case why EJB lookup tries to create listener on one more time.
    2.I am looking the 33703 port only.but it tries to create port on 3700 why?
    3.It was working till JES2005Q1.Is there any patch i need to install? or i need to change anything in my code.
    I am frustrated with this error for past one week.I will be happy if some body will give me the peace of mind(thru some solution).

    Hi,
    I am having two different domain (domain1,domain2) respectvely. My ABC.ear j2eee application is deployed on domain2 and its iiop port is 33703.In domain1 i have xyz.war (web application) and it's IIOP port is 3700 .In xyz.war i am having CallEJB.jsp file.In this Jsp file i want to lookup an EJB Service called PaymentEJB(JNDI Name is ejb/PaymentEJB).
    The code is below
    InitialContext context=new InitialContext();
    Object objRef=context.lookup("corbaname:iiop:andaman:33703#ejb/PaymentEJB");
    I am getting the following error.
    [#|2005-12-14T16:42:03.422+0530|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.corba._DEFAULT_.rpc.transport|_ThreadID=11;|"IOP00410216: (COMM_FAILURE) Unable to create IIOP listener on the specified host/port: all interfaces/3700"
    org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 216 completed: No
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2661)
    My doubt is
    1.While starting domain1 and domain2 iiop listeners are started on the port 3700 and 33703.in that case why EJB lookup tries to create listener on one more time.
    2.I am looking the 33703 port only.but it tries to create port on 3700 why?
    3.It was working till JES2005Q1.Is there any patch i need to install? or i need to change anything in my code.
    I am frustrated with this error for past one week.I will be happy if some body will give me the peace of mind(thru some solution).

  • Call ejb from browsers

    Hello Developers!
    I deployed my ejb to OAS4081. I call that
    from JDeveloper so it good. But when I try
    to call from applet in IExpl5 I can't
    instantiate the ORB. I've got a com.ms.security.SecurityException : oracle.oas.orb.CORBA.ORB.init
    I coded the CLASSPATH(oasoorb(yoj),client,
    ejbapi...) perfectly, I think.
    If anybody could help, please...
    Thanx!

    Hi there,
              I saw someone on this group had a problem to locate proper classpath
              to call EJB from JSP. I thought if you call EJB from classpath, you are
              calling the bean. But you loss all the EJB functions. To be able to utilize
              EJB features like object pooling. You need to call it from Weblogic server
              using url/jndi, not from the jar directly.
              Any comment? Am I right?
              BTW, my question about calling EJB from JSP means calling through URL,
              not a local path.
              Thank you
              >-------------------------------------------------------------------->
              Jim wrote in message <[email protected]>...
              >Hi there,
              > Can I call EJB from JSP? Is there a particular security setting or
              >concern for Weblogic? Is there an coding example?
              >
              >Thank you
              >
              >
              

  • Insert data into table from JSP page using Entity Beans(EJB 3.0)

    I want to insert data into a database table from JSP page using Entity Beans(EJB 3.0).
    1. I have a table 'FRIENDS', (in Oracle 10g database).
    2. It has two columns, 'NAME' and 'CITY'. Both have datatype strings(varchar2).
    3. Now from a JSP page, having two textfields, 'NAME' and 'CITY', I want to insert data into table 'FRIENDS'.
    4. In between JSP and database is a Entity Bean(EJB 3.0) and a stateless session bean.
    5. I am using JDev as editor.
    Please provide me code ASAP or link with similar example.
    Thank you.
    Anurag

    Hi,
    I am also trying that scenario. So u can
    Post the jsp form data to a Servlet which will act as a Controller.
    In the servlet invoke the business method.
    Similar kind of app is in www.roseindia.net
    Hope this would help u.
    Meanwhile if u get any optimal solution, pls post it.
    Thanks,
    Happy Java Coding.

  • UNABLE TO ACCESS SECURED EJB USING IIOP FROM JSP

    Following codes does not work with IIOP when called from jsp returns an
    com.sap.engine.services.iiop.CORBA.CORBAObject:com.sap.engine.services.iiop.server.portable.Delegate_1_1@8312b1 step2 RemoteException occurred in server thread; nested exception is: java.rmi.RemoteException: com.sap.engine.services.ejb.exceptions.BaseRemoteException: User Guest does not have access to method create(). at
    Following codes does not work with IIOP when called from a fat client returns an
    org.omg.CORBA.UNKNOWN:   vmcid: 0x0  minor code: 0 completed: Maybe
            at com.sun.corba.se.internal.core.UEInfoServiceContext.<init>(UEInfoServ
    iceContext.java:33)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstruct
    orAccessorImpl.java:39)
            at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingC
    onstructorAccessorImpl.java:27)
            at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
            at com.sun.corba.se.internal.core.ServiceContextData.makeServiceContext(
    Properties p = new Properties();
    p.put(Context.INITIAL_CONTEXT_FACTORY,
    "com.sun.jndi.cosnaming.CNCtxFactory");
    p.put(Context.PROVIDER_URL, "iiop://hostname:50007");
    p.put(Context.SECURITY_PRINCIPAL, "User");
    p.put(Context.SECURITY_CREDENTIALS, "pass");
    I have add java option to add IIOP filer
    -Dorg.omg.PortableInterceptor.ORBInitializerClass.com.sap.engine.services.iiop.csiv2.interceptors.SecurityInitializer
    Solution Required: Could you please detail me what steps in need to perform in order for me to access secure ejb using iiop protocol.
    FYI -- How ever ejb security works with P4 protocol, If required i can send you the test case ear.
    Thanks
    Vijay
    Following are the server side logs
    java.rmi.RemoteException: com.sap.engine.services.ejb.exceptions.BaseRemoteException: User Guest does not have access to method create().
         at test.TestEJBHomeImpl0.create(TestEJBHomeImpl0.java:91)
         at test._TestEJBHome_Stub.create(_TestEJBHome_Stub.java:214)
         at jsp_testIIOP1199698887113._jspService(jsp_testIIOP1199698887113.java:33)
         at com.sap.engine.services.servlets_jsp.server.jsp.JspBase.service(JspBase.java:112)
         at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:544)
         at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:186)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)
    Caused by: com.sap.engine.services.security.exceptions.BaseSecurityException: Caller not authorized.
         at com.sap.engine.services.security.resource.ResourceHandleImpl.checkPermission(ResourceHandleImpl.java:608)
         at com.sap.engine.services.security.resource.ResourceHandleImpl.checkPermission(ResourceHandleImpl.java:505)
         at com.sap.engine.services.security.resource.ResourceContextImpl.checkPermission(ResourceContextImpl.java:45)
         at test.TestEJBHomeImpl0.create(TestEJBHomeImpl0.java:89)
         ... 20 more
    ; nested exception is:
         java.lang.SecurityException: com.sap.engine.services.security.exceptions.BaseSecurityException: Caller not authorized.
         at com.sap.engine.services.security.resource.ResourceHandleImpl.checkPermission(ResourceHandleImpl.java:608)
         at com.sap.engine.services.security.resource.ResourceHandleImpl.checkPermission(ResourceHandleImpl.java:505)
         at com.sap.engine.services.security.resource.ResourceContextImpl.checkPermission(ResourceContextImpl.java:45)
         at test.TestEJBHomeImpl0.create(TestEJBHomeImpl0.java:89)
         at test._TestEJBHome_Stub.create(_TestEJBHome_Stub.java:214)
         at jsp_testIIOP1199698887113._jspService(jsp_testIIOP1199698887113.java:33)
         at com.sap.engine.services.servlets_jsp.server.jsp.JspBase.service(JspBase.java:112)
         at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:544)
         at com.sap.engine.services.servlets_jsp.server.servlet.JSPServlet.service(JSPServlet.java:186)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

    That's the code that you need to execute but you should
    probably encapsulate that code in Custom Action.
    Orion has a EJB Tag Library that is free to distribute that
    does all that stuff you just set some attributes.
    Go to their site and look at their Tag Libraries.
    Also look for other Tag Libraries Freely Available for EJB Access.

  • How to do a JSP talks with my "EJB from tables" ?

    Hi !!
    I'm new to Jdev.
    I have built a database, using MySql, and I also have built EJB from my tables.
    My EJB are Entity Beans and I have used the Wizard to create it from tables of my data base.
    Every EJB is working well and I have a simple JAVA client application which can use my
    beans to edit data in my database.
    Now I need create JSP pages that will use my beans, to edit my database too.
    So, I have created a new project and in this project I have built a JSP page, in the same workspace
    that has my beans' project.
    But I don't know what must I do to put my JSP page connected with my beans.
    1) What must I do?
    2) Is it possible to put a JSP page talking with a Entity Bean, or it will be necessary to create session beans?
    3) Is my beans' project a BC4J project? If not, how to change my beans' project to this goal?
    Any hint will be very helpful?
    Thanks.
    Rodrigo Pimenta Carvalho.
    Brazil.
    ==============================================================================

    There is a new feature to support this in the 9.0.3 preview release.

  • How can I access to an EJB from a JSP, using a taglib?

    I'm trying to access to an EJB from a JSP using a taglib,
              and I get the example in
              http://java.sun.com/j2ee/j2sdkee/techdocs/guides/ejb/html/Advanced5.html.
              But I colund't run this example because in the weblogic Log appears many
              errors when I run the JSP.
              Can you help me?
              

    Backing files is an option. If you need to do it from the controller, you
    could use the Forward object. The forward object constructor can take a URL
    object as a parameter. This should do the trick.
    Regards,
    Kunal
    "Panji Aryaputra" <[email protected]> wrote in message
    news:[email protected]..
    Hi, you have to use backing file to get what you want. In my case, I am
    using a page backing file. Perhaps a portlet backing file can do thatalso.
    Cmiiw, the redirect header makes the page redirected only if the httpheader
    has not been sent to client. In your case, the header has been sent (i.e.
    the portal header.jsp has been displayed, etc). So the header need to be
    sent before anything else sent to client browser. This is where thebacking
    file comes handy.
    hth
    panji.a
    "A Hagen" <[email protected]> wrote in message
    news:[email protected]..
    I'm using Bea Workshop 8.1 and trying to perform a redirect from inside
    a
    portlet
    using HTTPServletResponse.sendRedirect(String url)... but nothing
    happens
    I tryed the same trick with a simple JSP, and that's ok, but portal
    pages
    obviously
    catch the redirect somehow.
    Please could you tell the correct way of redirecting the whole browser
    to
    another
    page from inside portlets?
    Thanks!!!

  • How to invoke bpel from jsp

    Hi,
    I created a bpel application helloword.bpel which has one assign activity it takes input as a name i want to invoke this from jsp i write a code in jsp as follows:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    "http://www.w3.org/TR/html4/loose.dtd">
    <%@ page contentType="text/html;charset=windows-1252"%>
    <%@ page import="com.oracle.bpel.client.Locator" %>
    <%@ page import="com.oracle.bpel.client.NormalizedMessage" %>
    <%@ page import="com.oracle.bpel.client.dispatch.IDeliveryService" %>
    <%@ page import="com.oracle.bpel.client.util.Parameters" %>
    <html>
    <head>
    <title>helloworld</title>
    </head>
    <%
    String name=request.getParameter("name");
    if(name==null)
    name="BPEL";
    String xml ="<name xmlns=\"http://xmlns.oracle.com/helloworld\">" + name + "</name>";
    Locator locator = new Locator("default","helloworld");
    com.oracle.bpel.client.dispatch.IDeliveryService deliveryService = (com.oracle.bpel.client.dispatch.IDeliveryService) locator.lookupService(com.oracle.bpel.client.dispatch.IDeliveryService.SERVICE_NAME);
    com.oracle.bpel.client.NormalizedMessage nm = new com.oracle.bpel.client.NormalizedMessage();
    nm.addPart("payload",xml);
    deliveryService.post("helloworld","intiate",nm);
    out.println("BPELprocess helloWorld intiated");
    %>
    </html>
    i compiled this it is error free but when i try to run this i got a 500 internal server error whats the problem i dont if any one knows pls help me out.
    im new to bpel.
    the error is
    500 Internal Server Error
    java.lang.Exception: Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported is: "javax.naming.NameNotFoundException: ejb/collaxa/system/DeliveryBean not found     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.rmi.RMIServerContext.lookup(RMIServerContext.java:207)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.ApplicationContext.unprivileged_lookup(ApplicationContext.java:255)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.ApplicationContext.lookup(ApplicationContext.java:195)     at javax.naming.InitialContext.lookup(InitialContext.java:351)     at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:279)     at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)     at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:174)     at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:149)     at _helloworld._jspService(_helloworld.java:63)     [helloworld.jsp]     at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.1.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)     at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)     at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)     at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)     at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)     at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)     at java.lang.Thread.run(Thread.java:595)".     at com.oracle.bpel.client.util.ExceptionUtils.handleServerException(ExceptionUtils.java:82)     at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:254)     at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:174)     at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:149)     at helloworld.jspService(_helloworld.java:63)     [helloworld.jsp]     at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.1.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)     at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)     at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)     at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)     at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)     at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)     at java.lang.Thread.run(Thread.java:595)Caused by: java.lang.Exception: Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported is: "javax.naming.NameNotFoundException: ejb/collaxa/system/DeliveryBean not found     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.rmi.RMIServerContext.lookup(RMIServerContext.java:207)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.ApplicationContext.unprivileged_lookup(ApplicationContext.java:255)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.ApplicationContext.lookup(ApplicationContext.java:195)     at javax.naming.InitialContext.lookup(InitialContext.java:351)     at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:279)     at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)     at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:174)     at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:149)     at _helloworld._jspService(_helloworld.java:63)     [helloworld.jsp]     at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.1.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)     at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)     at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)     at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)     at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)     at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)     at java.lang.Thread.run(Thread.java:595)".     at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:293)     at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)     ... 21 more

    Looks like you are hitting some bug on 10.1.3.1.0, have you tried on a higher version and also referred SOA_ORACLE_HOME\bpel\samples\tutorials\102.InvokingProcesses\jsp sample ?

  • Error while calling bpel process from jsp page

    Hi,
    I am trying to access bpel process from a jsp page..i could successfully deploy bpel and run it from bpel console.however accessing the bpel from a jsp gives an error. I have attached the code and error. I am using jdev10.3.1 with SOA suite.Any help is greatly appreciated.
    Thanks,
    p
    Hashtable env = null;
    env = new Hashtable();
    env.put("java.naming.factory.initial", "oracle.j2ee.naming.ApplicationClientInitialContextFactory");
    env.put("java.naming.provider.url", "opmn:ormi://fs-sys-414:6005:home/orabpel");
    env.put("java.naming.security.principal", "oc4jadmin");
    env.put("java.naming.security.credentials", "xxxxx");
    try{
    String xml = "<input xmlns=\"http://xmlns.oracle.com/Pr_Bpel_Process\">" + "HELLO" + "</input>";
    Locator locator = new Locator("default","bpel",env);
    System.out.println("locator object" +locator);
    IDeliveryService deliveryService = (IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME );
    // construct the normalized message and send to Oracle BPEL Process Manager
    System.out.println("delivery service name="+IDeliveryService.SERVICE_NAME);
    NormalizedMessage nm = new NormalizedMessage( );
    nm.addPart("payload",xml);
    System.out.println("adding payload to nm");
    deliveryService.post("Pr_Bpel_Process", "initiate", nm);
    oracle.classloader.util.AnnotatedNoClassDefFoundError:
         Missing class: com.collaxa.common.util.NonSyncStringWriter
         Dependent class: com.oracle.bpel.client.ClientResources
         Loader: current-workspace-app.web.pra_appln-pra_proj-webapp:0.0.0
         Code-Source: /C:/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar
         Configuration: <classpath> in C:\jdev10131SOA\jdev\mywork\pra_appln\pra_proj\public_html
    The missing class is not available from any code-source or loader in the system.
    06/11/23 14:33:29      at oracle.classloader.PolicyClassLoader.handleClassNotFound (PolicyClassLoader.java:2068) [C:/jdev10131SOA/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@14916158]
         at oracle.classloader.PolicyClassLoader.internalLoadClass (PolicyClassLoader.java:1679) [C:/jdev10131SOA/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@14916158]
         at oracle.classloader.PolicyClassLoader.loadClass (PolicyClassLoader.java:1635) [C:/jdev10131SOA/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@14916158]
         at oracle.classloader.PolicyClassLoader.loadClass (PolicyClassLoader.java:1620) [C:/jdev10131SOA/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@14916158]
         at java.lang.ClassLoader.loadClassInternal (ClassLoader.java:319) [jre bootstrap, by jre.bootstrap:1.5.0_06]
         at com.oracle.bpel.client.ClientResources.sanitizeArgs (ClientResources.java:123) [C:/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar (from <classpath> in C:\jdev10131SOA\jdev\mywork\prashant_appln\pra_proj\public_html), by current-workspace-app.web.prashant_appln-pra_proj-webapp:0.0.0]
         at com.oracle.bpel.client.ClientResources.getString (ClientResources.java:93) [C:/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar (from <classpath> in C:\jdev10131SOA\jdev\mywork\prashant_appln\pra_proj\public_html), by current-workspace-app.web.prashant_appln-pra_proj-webapp:0.0.0]
         at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean (BeanRegistry.java:293) [C:/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar (from <classpath> in C:\jdev10131SOA\jdev\mywork\prashant_appln\pra_proj\public_html), by current-workspace-app.web.prashant_appln-pra_proj-webapp:0.0.0]
         at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean (DeliveryService.java:250) [C:/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar (from <classpath> in C:\jdev10131SOA\jdev\mywork\prashant_appln\pra_proj\public_html), by current-workspace-app.web.prashant_appln-pra_proj-webapp:0.0.0]
         at com.oracle.bpel.client.delivery.DeliveryService.post (DeliveryService.java:174) [C:/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar (from <classpath> in C:\jdev10131SOA\jdev\mywork\prashant_appln\pra_proj\public_html), by current-workspace-app.web.prashant_appln-pra_proj-webapp:0.0.0]
         at com.oracle.bpel.client.delivery.DeliveryService.post (DeliveryService.java:149) [C:/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar (from <classpath> in C:\jdev10131SOA\jdev\mywork\prashant_appln\pra_proj\public_html), by current-workspace-app.web.prashant_appln-pra_proj-webapp:0.0.0]
         at testbpel.jspService (_testbpel.java:79) [C:/jdev10131SOA/jdev/mywork/prashant_appln/pra_proj/classes/.jsps/ (from *.jsp in C:\jdev10131SOA\jdev\mywork\prashant_appln\pra_proj\classes\.jsps), by current-workspace-app.web.prashant_appln-pra_proj-webapp.jsp27809090:0.0.0]
         at com.orionserver.http.OrionHttpJspPage.service (OrionHttpJspPage.java:59) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.jsp.runtimev2.JspPageTable.service (JspPageTable.java:453) [C:/jdev10131SOA/j2ee/home/lib/ojsp.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.jsp.runtimev2.JspServlet.internalService (JspServlet.java:591) [C:/jdev10131SOA/j2ee/home/lib/ojsp.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.jsp.runtimev2.JspServlet.service (JspServlet.java:515) [C:/jdev10131SOA/j2ee/home/lib/ojsp.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at javax.servlet.http.HttpServlet.service (HttpServlet.java:856) [C:/jdev10131SOA/j2ee/home/lib/servlet.jar (from <code-source> (ignore manifest Class-Path) in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by api:1.4.0]
         at com.evermind.server.http.ServletRequestDispatcher.invoke (ServletRequestDispatcher.java:711) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal (ServletRequestDispatcher.java:368) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest (HttpRequestHandler.java:866) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind.server.http.HttpRequestHandler.processRequest (HttpRequestHandler.java:448) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest (HttpRequestHandler.java:216) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind.server.http.HttpRequestHandler.run (HttpRequestHandler.java:117) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind.server.http.HttpRequestHandler.run (HttpRequestHandler.java:110) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run (ServerSocketReadHandler.java:260) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket (ServerSocketAcceptHandler.java:239) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700 (ServerSocketAcceptHandler.java:34) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run (ServerSocketAcceptHandler.java:880) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run (ReleasableResourcePooledExecutor.java:298) [C:/jdev10131SOA/j2ee/home/lib/oc4j-internal.jar (from <code-source> in META-INF/boot.xml in C:\jdev10131SOA\j2ee\home\oc4j.jar), by oc4j:10.1.3]
         at java.lang.Thread.run (Thread.java:595) [jre bootstrap, by jre.bootstrap:1.5.0_06]

    Hi,
    Now i am getting different kind of exception::
    06/11/24 08:11:06 java.lang.Exception: Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported is: "javax.naming.NamingException: META-INF/application-client.xml not found (see J2EE spec, application-client chapter for requirements and format of the file)
         at oracle.j2ee.naming.ApplicationClientInitialContextFactory.getRequiredClasspathResource(ApplicationClientInitialContextFactory.java:239)
         at oracle.j2ee.naming.ApplicationClientInitialContextFactory.getArchive(ApplicationClientInitialContextFactory.java:161)
         at oracle.j2ee.naming.ApplicationClientInitialContextFactory.getInitialContext(ApplicationClientInitialContextFactory.java:111)
         at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
         at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
         at javax.naming.InitialContext.init(InitialContext.java:223)
         at javax.naming.InitialContext.<init>(InitialContext.java:197)
         at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:277)
         at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
         at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:174)
         at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:149)
         at _testbpel._jspService(_testbpel.java:79)
         at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    06/11/24 08:11:06      at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:293)
    06/11/24 08:11:06      at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
    06/11/24 08:11:06      at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:174)
    06/11/24 08:11:06      at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:149)
    06/11/24 08:11:06      at testbpel.jspService(_testbpel.java:79)
    06/11/24 08:11:06      at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
    06/11/24 08:11:06      at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
    06/11/24 08:11:06      at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
    06/11/24 08:11:06      at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
    06/11/24 08:11:06      at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    06/11/24 08:11:06      at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
    06/11/24 08:11:06      at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
    06/11/24 08:11:06      at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
    06/11/24 08:11:06      at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
    06/11/24 08:11:06      at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
    06/11/24 08:11:06      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
    06/11/24 08:11:06      at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
    06/11/24 08:11:06      at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    06/11/24 08:11:06      at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
    06/11/24 08:11:06      at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
    06/11/24 08:11:06      at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
    06/11/24 08:11:06      at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
    06/11/24 08:11:06      at java.lang.Thread.run(Thread.java:595)

  • How to use EJB in JSP...urgent!!!

    hello,
    i am novice programmer in EJB.
    i am using weblogic 6.1 ...
    my problem is how to use EJB in jsp page.
    my code is as follow..but its not displaying any result.
    <%@ page import="javax.naming.InitialContext,
    javax.naming.Context,
    java.util.Properties,
    firstEJB.First,
    firstEJB.FirstHome"%>
    <%
         long t1 = System.currentTimeMillis();
         System.out.println(t1);
         Properties props = new Properties();
         p.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.TengahInitialContextFactory");
         props.put(Context.PROVIDER_URL, "localhost:7001");
         Context ctx = new InitialContext(props);
         FirstHome home = (FirstHome)ctx.lookup("FirstEJB");
         First bean = home.create();
         String time = bean.getTime();
         bean.remove();
         ctx.close();
         long t2 = System.currentTimeMillis();
    %>
    <html>
         <head>
              <style>p { font-family:Verdana;font-size:12px; }</style>
         </head>
         <body>
              <p>Message received from bean = "<%= time %>".<br>Time taken :
              <%= (t2 - t1) %> ms.</p>
         </body>
    </html>
    please tell me the solution.

    Hi, I don't know if it may be the cuase of your problems, but you should narrow the Object obtained doing the lookup, like this:
    FirstHome home = (FirstHome) PortableRemoteObject.narrow(ctx.lookup("FirstEJB"), FirstHome.class);

Maybe you are looking for