Servlet service() method

Why we open the database connection in the servlet�s doPost() method, instead of the init() method, although opening database connection could be considered a one-time activity ?
But what happens if you declare the connection as an instance variable, and open it in the init() method, and close it in the destroy() method?
Can somebody give me more detail examples about this.
What�s the meaning of :
The servlet instance can throw a UnavailableException to indicate that it is temporarily or permananetly available, and about temporary or permanent failures?
Thank You very much.

A single connection can only be used by one thread at once, so declaring only one connection will make your application very unfriendly when used by multiple users.
But you are on the right track though, you should not be opening and closing connections for each statement you execute. What you need to look into is connection pooling, and that can be handled by most popular java webservers. If you are using tomcat for example, you can look here on how to set it up and use it:
http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html
The only thing I have to add to that document is that you need to put your database driver jar in common/lib for this to work.

Similar Messages

  • Servlets service method....

    Hello friends can anyone guide me about servlets service method.
    I know it is called internally by container but how ? How container works to call service
    method.
    thanks ..

    thanks for the above two replies. Yes I am aware of these facts. But what i want to know is for my knowledge, Does jsp container or servlet container implement any class that in turn calls the service method of our class passing them request and response object. As request and response are the interfaces, they only define certain methods leaving implementation of these methods for the container. My question is how they might be implementing those methods and then calling the service method passing them those objects. I will print one example that i created so that you guys will have some idea of my query.
    // Take this as the HttpServletRequest interface. Reference of this interface should be passed
    //to the user-defined class's method.
    interface ServletRequestInterface
         public String getName();
    // The class implementing the above interface
    class Test implements ServletRequestInterface
         ServletRequestInterface a=null;
         public String getName(){
         return "Hi";
         Test(){setServletRequestInterface();}
         public void setServletRequestInterface()
              a= this;
         public ServletRequestInterface getServletRequestInterface()
              return a;
    //the class actually making use of the above interface but still it is not ready to pass it to some user
    //defined method. How can we do it or is probably handled in container.
    public class ServletContainer
         public static void main(String args[])
              Test t = new Test();
              System.out.println(t.getServletRequestInterface().getName());
    This will print hi. Now if i want to pass this ServletRequestInterface to user-defined methods, how will i pass it automatically.

  • ORACLE ADF 11g /JSF TO  serviet (Service method) not invoking

    Hi,
    ORACLE ADF 11g /JSF TO serviet (Service method) not invoking
    My project name is : ComplProject
    inside the project im having 1 jsp say x.jsp
    work environment : (oracleADF 11g) jdev11 and weblogic server 10.3
    in x.jsp im displaying 1 go link -> when ever we click on GO link it should go to ComplServlet.java
    i tried like,
    FacesContext.getCurrentInstance().getExternalContext().redirect("/servlet/ComplServlet");
    the "ComplServlet" is an URL pattern in web.xml which points to servlet.
    but not working
    i pointed to faces-config.xml also , not working
    i tried to forward like
    FacesContext context = FacesContext.getCurrentInstance();
    ServletContext sContext = (ServletContext)context.getExternalContext().getContext();
    ServletRequest request = (ServletRequest)context.getExternalContext().getRequest();
    System.out.println("third line...............");
    HttpServletResponse response = (HttpServletResponse)context.getExternalContext().getResponse();
    response.sendRedirect("/servlet/ViewDocument");
    sContext.getRequestDispatcher("/servlet/ViewDocument").include(request, response);
    brief
    (from jsf page) after clicking on GO LINK i need to redirect or control should go to servlet ->service method
    thanks in advance
    regards,
    sandeep

    Hi,
    i tried like,
    FacesContext.getCurrentInstance().getExternalContext().redirect("/servlet/ComplServlet");
    the "ComplServlet" is an URL pattern in web.xml which points to servlet.
    but not workingUse like following.
        public HttpServletRequest getServletRequest() {
            return (HttpServletRequest)facesContext.getExternalContext().getRequest();
        public redirect(String url){
           getServletRequest().sendRedirect(getServletRequest().getContextPath() + "/servlet/ComplServlet");
        }If you are using golink as frank suggested then use it like this.
    <af:goLink text="ComplServlet" destination="/servlet/ComplServlet"/>no need of using context when using goLink,
    Regards,
    Santosh.

  • Service method  of servlet  is called repetitively as response time is more

    Problem: when we try to retrieve data for a particular input, then the retrieve
    query takes longer time which is as expected i.e more than five minutes as our data ware house is large and the where clause is very complex. After 5 mins what happens is that the service
    method in the servlet call is made again and so the retrieve process as if it was
    triggered again,where as no one has triggered it. This happens every 5 mins and the overall
    process hangs forever.pl help if any answer
    thanks in adv.
    M.S.Chandrasekhar

    Hi ,
    Hello ,
    Try this code ,
    Class classObject = Class.forName("SecondServlet");
    SecondServlet servlet = (SecondServlet)classObject.newInstance();
    servlet.init(getServletConfig());
    System.out.println("Before calling the service() from TestServlet");
    servlet.service(req,res);
    servlet.destroy();
    Regards ,
    Venkat

  • Service method of servlet is called repeatedly by 9ias

    Problem: when we try to retrieve data for a particular input, then the retrieve
    query takes longer time which is as expected i.e more than five minutes as our data ware house is large and the where clause is very complex. After 5 mins what happens is that the service
    method in the servlet call is made again and so the retrieve process as if it was
    triggered again,where as no one has triggered it. This happens every 5 mins and the overall
    process hangs forever.pl help if any answer
    thanks in adv.
    M.S.Chandrasekhar

    Hi MS,
    My guess (and it can only be a guess, I'm afraid, based on the [lack
    of] information you have supplied) is that you are hitting some sort
    of timeout value, which is determined by a setting in one of your
    configuration files.
    So as Prasad has already mentioned, more information would help us
    to help you.
    Good Luck,
    Avi.

  • DoGet() and service() method differences in servlets

    can you give the differences between doGet() and service() methods in servlets. where to use doGet() and where to use service()
    thanks

    service() is called whenever the Servlet gets a HTTP request. Per default it calls the correct do<METHOD>() method.
    So doGet() is only called when you get a GET request via HTTP. For POST (for example) doPost() will be called instead.

  • Can we have more than one service method in a single servlet

    can we have more than one service method in a single servlet?explain with example

    No, you can only have one service method. However, you can have it process two different requests as follows.
    Lets say you have two JSP pages. Put a hidden text value in one called jsp1 and a hiddent text value in the other called jsp2 (example: <input type="hidden" name="jspPage" value="jsp1"> and <input type="hidden" name="jspPage" value="jsp2">.
    Then in your service method, read in request.getParameter("jspPage") to determine if its jsp1 or jsp2 and call up the appropriate logic to process them separately.

  • Service method in javax.servlet.http.HttpServlet

    Hi All,
    I have a doubt in the service method of javax.servlet.http.HttpServlet
    There are two service methods in the javax.servlet.http.HttpServlet.
    one is with protected and other is with public access specifier.
    In the javadoc it is said that public service method dispatches client requests to the protected service method.
    Why this type of design is required.
    Instead of having a two service methods, Is it not possible to have a single service method and attain the functionality intended.
    Are there any advantages by having two service methods.
    I think there may be some idea/functionality behind these for having two service methods , which I am not able to understand.
    Would be greatful , if someone can throw light on this .
    Thanks,
    Dhanasekaran.

    This is just a theory, but here goes:
    The public service() method takes arguments of ServletRequest and ServletResponse, presumably because that's the signature that the non-HTTP specific servlet engine requires.
    The protected service() method of HttpServlet takes arguments of HttpServletRequest and HttpServletResponse and includes HTTP specific functions.
    My guess is that the public service() method either casts the arguments to the Http objects or does work to create the Http objects before calling the protected method.

  • Disadvantages of Overriding service() method in servlets?

    Hi,
    Could you please tell me what are the possible disadvantages of overriding service() method in the servlets?

    If there is some business logic in the service() itself? without the control being transferred to doGet() nor doPost()?
    then what might be the disadvantages of overriding service()But there isn't any business logic in the service() method itself, unless you override it. You are going around in circles here. This is making no sense at all.

  • Error while executing the service - The service method not defined error

    Hi,
    I am using Oracle UCM Content server 11g. I have created a custom service using component wizard. I have provided class name and method correct in the service declarations. The method should return manipulated Revision Label value. I am executing the service as a direct service and not subservice from a resource file using the following command.
    <$executeService("servicename")$>
    The serice is getting called but I am getting the following error log
    Event generated by user 'weblogic' at host 'localhost:16200'. Unable to execute service Edit_Revision_Label and function generateRevLabelInfo.
    The service method 'generateRevLabelInfo' is not defined. [ Details ]
    An error has occurred. The stack trace below shows more information.
    !csUserEventMessage,weblogic,localhost:16200!$!csServiceDataException,Edit_Revision_Label,generateRevLabelInfo!$!csMethodNotDefined,generateRevLabelInfo
    intradoc.common.ServiceException: !csServiceDataException,Edit_Revision_Label,generateRevLabelInfo!$
    *ScriptStack Edit_Revision_Label
    Edit_Revision_Label,dDocName=3:generateRevLabelInfo,dDocName=
    at intradoc.server.ServiceRequestImplementor.buildServiceException(ServiceRequestImplementor.java:2115)
    at intradoc.server.Service.buildServiceException(Service.java:2260)
    at intradoc.server.Service.createServiceExceptionEx(Service.java:2254)
    at intradoc.server.Service.createServiceException(Service.java:2249)
    at intradoc.server.ServiceRequestImplementor.handleActionException(ServiceRequestImplementor.java:1766)
    at intradoc.server.ServiceRequestImplementor.doAction(ServiceRequestImplementor.java:1716)
    at intradoc.server.Service.doAction(Service.java:477)
    at intradoc.server.ServiceRequestImplementor.doActions(ServiceRequestImplementor.java:1458)
    at intradoc.server.Service.doActions(Service.java:472)
    at intradoc.server.ServiceRequestImplementor.executeSubServiceCode(ServiceRequestImplementor.java:1322)
    at intradoc.server.Service.executeSubServiceCode(Service.java:3866)
    at intradoc.server.ServiceRequestImplementor.executeServiceEx(ServiceRequestImplementor.java:1200)
    at intradoc.server.Service.executeServiceEx(Service.java:3861)
    at intradoc.server.ServiceRequestImplementor.executeSafeServiceInNewContext(ServiceRequestImplementor.java:1231)
    at intradoc.server.Service.executeSafeServiceInNewContext(Service.java:3856)
    at intradoc.server.script.ServiceScriptExtensions.evaluateFunction(ServiceScriptExtensions.java:269)
    at intradoc.common.DynamicHtmlMerger.computeFunction(DynamicHtmlMerger.java:1430)
    at intradoc.common.DynamicHtmlMerger.evaluateGrammarElement(DynamicHtmlMerger.java:908)
    at intradoc.common.DynamicHtmlMerger.substituteVariable(DynamicHtmlMerger.java:623)
    at intradoc.common.DynamicHtml.substituteVariable(DynamicHtml.java:1394)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1110)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtml(DynamicHtml.java:991)
    at intradoc.common.DynamicHtmlMerger.outputDynamicHtmlPage(DynamicHtmlMerger.java:2007)
    at intradoc.server.Service.buildResponsePage(Service.java:1267)
    at intradoc.server.Service.doResponse(Service.java:2076)
    at intradoc.server.ServiceRequestImplementor.doRequest(ServiceRequestImplementor.java:802)
    at intradoc.server.Service.doRequest(Service.java:1890)
    at intradoc.server.ServiceManager.processCommand(ServiceManager.java:435)
    at intradoc.server.IdcServerThread.processRequest(IdcServerThread.java:265)
    at intradoc.idcwls.IdcServletRequestUtils.doRequest(IdcServletRequestUtils.java:1343)
    at intradoc.idcwls.IdcServletRequestUtils.processFilterEvent(IdcServletRequestUtils.java:1715)
    at intradoc.idcwls.IdcIntegrateWrapper.processFilterEvent(IdcIntegrateWrapper.java:222)
    at sun.reflect.GeneratedMethodAccessor1173.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at idcservlet.common.IdcMethodHolder.invokeMethod(IdcMethodHolder.java:87)
    at idcservlet.common.ClassHelperUtils.executeMethodEx(ClassHelperUtils.java:305)
    at idcservlet.common.ClassHelperUtils.executeMethodWithArgs(ClassHelperUtils.java:278)
    at idcservlet.ServletUtils.executeContentServerIntegrateMethodOnConfig(ServletUtils.java:1600)
    at idcservlet.IdcFilter.doFilter(IdcFilter.java:352)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
    at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
    at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
    at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
    at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
    at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
    at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
    at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
    at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
    at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
    at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: intradoc.data.DataException: !csMethodNotDefined,generateRevLabelInfo
    at intradoc.server.Service.doCodeEx(Service.java:561)
    at intradoc.server.Service.doCode(Service.java:505)
    at intradoc.server.ServiceRequestImplementor.doAction(ServiceRequestImplementor.java:1643)
    at intradoc.server.Service.doAction(Service.java:477)
    at intradoc.server.ServiceRequestImplementor.doActions(ServiceRequestImplementor.java:1458)
    at intradoc.server.Service.doActions(Service.java:473)
    at intradoc.server.ServiceRequestImplementor.executeSubServiceCode(ServiceRequestImplementor.java:1323)
    at intradoc.server.Service.executeSubServiceCode(Service.java:3867)
    at intradoc.server.ServiceRequestImplementor.executeServiceEx(ServiceRequestImplementor.java:1200)
    at intradoc.server.Service.executeServiceEx(Service.java:3862)
    at intradoc.server.ServiceRequestImplementor.executeSafeServiceInNewContext(ServiceRequestImplementor.java:1231)
    at intradoc.server.Service.executeSafeServiceInNewContext(Service.java:3857)
    at intradoc.server.script.ServiceScriptExtensions.evaluateFunction(ServiceScriptExtensions.java:269)
    at intradoc.common.DynamicHtmlMerger.computeFunction(DynamicHtmlMerger.java:1430)
    at intradoc.common.DynamicHtmlMerger.evaluateGrammarElement(DynamicHtmlMerger.java:908)
    at intradoc.common.DynamicHtmlMerger.substituteVariable(DynamicHtmlMerger.java:623)
    at intradoc.common.DynamicHtml.substituteVariable(DynamicHtml.java:1394)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1110)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtmlEx(DynamicHtml.java:1227)
    at intradoc.common.DynamicHtml.outputHtmlFromStart(DynamicHtml.java:1020)
    at intradoc.common.DynamicHtml.outputHtml(DynamicHtml.java:991)
    at intradoc.common.DynamicHtmlMerger.outputDynamicHtmlPage(DynamicHtmlMerger.java:2007)
    at intradoc.server.Service.buildResponsePage(Service.java:1267)
    at intradoc.server.Service.doResponse(Service.java:2076)
    at intradoc.server.ServiceRequestImplementor.doRequest(ServiceRequestImplementor.java:802)
    at intradoc.server.Service.doRequest(Service.java:1890)
    at intradoc.server.ServiceManager.processCommand(ServiceManager.java:435)
    at intradoc.server.IdcServerThread.processRequest(IdcServerThread.java:265)
    at intradoc.idcwls.IdcServletRequestUtils.doRequest(IdcServletRequestUtils.java:1346)
    at intradoc.idcwls.IdcServletRequestUtils.processFilterEvent(IdcServletRequestUtils.java:1715)
    at intradoc.idcwls.IdcIntegrateWrapper.processFilterEvent(IdcIntegrateWrapper.java:222)
    at sun.reflect.GeneratedMethodAccessor1173.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at idcservlet.common.IdcMethodHolder.invokeMethod(IdcMethodHolder.java:88)
    at idcservlet.common.ClassHelperUtils.executeMethodEx(ClassHelperUtils.java:305)
    at idcservlet.common.ClassHelperUtils.executeMethodWithArgs(ClassHelperUtils.java:278)
    at idcservlet.ServletUtils.executeContentServerIntegrateMethodOnConfig(ServletUtils.java:1600)
    at idcservlet.IdcFilter.doFilter(IdcFilter.java:352)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
    at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
    at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
    at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
    at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
    at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
    at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
    at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
    at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
    at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
    at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
    at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
    at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
    at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Please let me know the suggestions and the resolution on the above issue
    Thanks in advance,
    Sarang

    Hirva wrote:
    Trying to get access to the sun convergence we get this error
    "Error while executing the service request : : Login to Mail Service failed " after a look around we found out that the problem was that some one had deleted the msg-admin-server user from the ldap.What else was "accidentally" deleted? Do you have audit logging enabled for Directory Server?
    but still doesnt work? where else should we look?Messaging Server also creates a msg-admin group ("cn=Messaging End User Administrators Group") which is used for Directory Server ACI purposes. You can see the entries that Messaging Server added during initial configuration by reviewing the *.ldif files under the following directory (MS7.0 32bit):
    /var/opt/sun/comms/messaging/install/Regards,
    Shane.

  • Calling Web Service Methods in  Web Dynpro

    1. Created a Bean with get & set methods..Created a portal Service around it
    2. Created a Web Service and checked the same using EP Web Checker
    3. Created a Web Dynpro app having two screens (First one for setting String value and second  for getting string value)
    4. Configured the Web Service in the model...I can see the Request and Response in the Context...Mapped the request to first view and Response to Second View
    How do I call the Web Service method to Set the Paramter and how do I extract the value from the response?
    Rgds

    Hello Gulshan,
    Did you check this:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/webdynpro/tutorial on accessing an email web service - 6_0_.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/webdynpro/tutorial on accessing the car rental web service - 7.htm
    Best regards, Maksim Rashchynski.

  • Web Service Method that returns an ArrayList

    Hi guys,
    I have to create a web service method that returns an ArrayList, but it's not working. My problem is:
    With the "@XmlSeeAlso" annotation, my client prints the result, but the ArryaList is not from java.util, it's from org.me.calculator so I can't use it.
    If I remove this annotation, I get no result, with this error message on Tomcat 6:
    [javax.xml.bind.JAXBException: class java.util.ArrayList nor any of its super class is known to this context.]
    I'm a newbie, and trying to understand web services (I read some posts here, but didn't get the point, from its answers), but this problem I just can't figure out how to solve....
    WEb Service
    package org.me.calculator;
    import java.io.Serializable;
    import javax.jws.WebMethod;
    import javax.jws.WebParam;
    import javax.jws.WebService;
    import java.util.*;
    import java.util.ArrayList;
    import javax.xml.bind.annotation.XmlSeeAlso;
    * @author eduardo.domanski
    @WebService()
    @XmlSeeAlso({java.util.ArrayList.class}) // With this, I can see the result on client, but, the ArrayList is an org.me.calculator.ArrayList class.... Strange...
    public class CalculatorWS {
        @WebMethod(operationName = "valores")
        public ArrayList valores(@WebParam(name = "a") int a,
                           @WebParam(name = "b") int b) {
            ArrayList teste = new ArrayList();
            ArrayList a1 = new ArrayList();
            a1.add(a);
            a1.add(b);
            ArrayList a2 = new ArrayList();
            a2.add(a+b);
            a2.add(a-b);
            teste.add(a1);
            teste.add(a2);
            return  teste; 
    }CLient
    package org.me.calculator.client;
    import java.io.*;
    import java.net.*;
    import java.util.ArrayList;
    import javax.servlet.*;
    import javax.servlet.http.*;
    public class ClientServlet extends HttpServlet {
        protected void processRequest(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            response.setContentType("text/html;charset=UTF-8");
            PrintWriter out = response.getWriter();
            out.println("<html>");
            out.println("<head>");
            out.println("<title>Servlet ClientServlet</title>");
            out.println("</head>");
            out.println("<body>");
            out.println("<h1>Servlet ClientServlet at " + request.getContextPath() + "</h1>");
            try { // Call Web Service Operation
                org.me.calculator.CalculatorWSService service = new org.me.calculator.CalculatorWSService();
                org.me.calculator.CalculatorWS port = service.getCalculatorWSPort();
                // TODO initialize WS operation arguments here
                int i = 8;
                int j = -6;
                // TODO process result here
                ArrayList result = (ArrayList) port.valores(i, j);
                out.println("Result = " + result);
            } catch (Exception ex) {
                System.out.println(ex);
            // TODO handle custom exceptions here
            out.println("</body>");
            out.println("</html>");
            out.close();
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            processRequest(request, response);
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            processRequest(request, response);
    }THank you all,
    Eduardo
    Edited by: EduardoDomanski on Apr 23, 2008 4:40 AM

    I forgot to say that, when I try to return an ArrayList of an object, for example, ClassA, which is on the package org.me.classes, on my Server App, the ArrayList is returned, but the objects are from type org.me.calculator.ClassA. It should be from org.me.classes.ClassA, right?
    This package also exists on my client App, to use the object, but as the returned type is from another package, I can't even cast it. I tried some annotations @Xml... but it failed.
    Packages
    ServerApp
    org.me.calculator
    CalcWS.java
    org.me.classes
    ClassA.java
    Client App
    org.me.classes
    ClassA.java
    The return from my method should be an ArrayList of org.me.classes.ClassA, but when I print it, on client, it's from org.me.calculator.ClassA.
    Does anybody knows, or had the same problem?
    Thanks,
    Eduardo

  • Desperate, help please Servlet.service() for servlet jsp threw exception

    Hi,
    I have completed 99.99% of project development, when I am about to deploy JSC throws "Servlet.service() for servlet jsp threw exception javax.faces.el.EvaluationException: java.lang.NullPointerException" I can't understand why.
    My application was working absolutely fine, I can't understand why its throwing exception now.
    I tried debuging, but i can't understand where exactly its throwing exception and whats the error.
    I would really appreciate your help, I have spent almost a day trying to figure out but din't get anywhere.
    here is my server.log
    Starting Sun Java System Application Server Platform Edition 8.0.0_01 (build b08-fcs) ...
    [#|2005-08-23T11:44:39.221+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=10;|CORE5076: Using [Java HotSpot(TM) Client VM, Version 1.4.2_06] from [Sun Microsystems Inc.]|#]
    [#|2005-08-23T11:44:42.025+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=10;|ADM0020:Following is the information about the JMX MBeanServer used:|#]
    [#|2005-08-23T11:44:42.327+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=10;|ADM0001:MBeanServer initialized successfully|#]
    [#|2005-08-23T11:44:44.572+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|Creating virtual server server|#]
    [#|2005-08-23T11:44:44.598+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=10;|S1AS AVK Instrumentation disabled|#]
    [#|2005-08-23T11:44:44.616+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.security|_ThreadID=10;|SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.|#]
    [#|2005-08-23T11:44:51.061+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.transaction|_ThreadID=10;|JTS5014: Recoverable JTS instance, serverId = [100]|#]
    [#|2005-08-23T11:44:53.917+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=10;|Satisfying Optional Packages dependencies...|#]
    [#|2005-08-23T11:44:54.400+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.resource.resourceadapter|_ThreadID=10;|RAR7008 : Initialized monitoring registry and listeners|#]
    [#|2005-08-23T11:44:56.346+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=10;|CORE5100:Loading system apps|#]
    [#|2005-08-23T11:44:58.494+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.ejb|_ThreadID=10;|EJB5109:EJB Timer Service started successfully for datasource [jdbc/__TimerPool]|#]
    [#|2005-08-23T11:44:58.494+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.classloading|_ThreadID=10;|LDR5010: All ejb(s) of [__ejb_container_timer_app] loaded successfully!|#]
    [#|2005-08-23T11:44:59.954+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.classloading|_ThreadID=10;|LDR5010: All ejb(s) of [MEjbApp] loaded successfully!|#]
    [#|2005-08-23T11:45:01.401+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.classloading|_ThreadID=10;|LDR5010: All ejb(s) of [ConverterApp] loaded successfully!|#]
    [#|2005-08-23T11:45:01.407+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [ConverterApp:war-ic.war] in virtual server [server] at [converter]|#]
    [#|2005-08-23T11:45:02.500+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.classloading|_ThreadID=10;|LDR5010: All ejb(s) of [travelApp] loaded successfully!|#]
    [#|2005-08-23T11:45:02.792+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core.classloading|_ThreadID=10;|LDR5010: All ejb(s) of [HelloWorldApp] loaded successfully!|#]
    [#|2005-08-23T11:45:02.798+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0302: Starting Tomcat.|#]
    [#|2005-08-23T11:45:03.281+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [adminapp] in virtual server [server] at [web1]|#]
    [#|2005-08-23T11:45:03.335+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [admingui] in virtual server [server] at [asadmin]|#]
    [#|2005-08-23T11:45:03.338+0100|WARNING|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0500: default-locale attribute of locale-charset-info element has been deprecated and is being ignored. Use default-charset attribute of parameter-encoding element instead|#]
    [#|2005-08-23T11:45:03.351+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [com_sun_web_ui] in virtual server [server] at [com_sun_web_ui]|#]
    [#|2005-08-23T11:45:03.371+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [jTravellerService] in virtual server [server] at [jTravellerService]|#]
    [#|2005-08-23T11:45:03.399+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=10;|WEB0100: Loading web module [hello-jaxrpc] in virtual server [server] at [hello-jaxrpc]|#]
    [#|2005-08-23T11:45:03.427+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.catalina.startup.Embedded|_ThreadID=10;|Starting tomcat server|#]
    [#|2005-08-23T11:45:03.428+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.catalina.startup.Embedded|_ThreadID=10;|Catalina naming disabled|#]
    [#|2005-08-23T11:45:03.637+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.catalina.core.StandardEngine|_ThreadID=10;|Starting Servlet Engine: Sun-Java-System/Application-Server-PE-8.0|#]
    [#|2005-08-23T11:45:13.214+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.resource.webservices.rpc.server.http|_ThreadID=10;|JAXRPC.JAXRPCSERVLET.12: JAX-RPC context listener initializing|#]
    [#|2005-08-23T11:45:14.087+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.resource.webservices.rpc.server.http|_ThreadID=10;|JAXRPC.JAXRPCSERVLET.14: JAX-RPC servlet initializing|#]
    [#|2005-08-23T11:45:14.268+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.catalina.startup.ContextConfig|_ThreadID=10;|Missing application web.xml, using defaults only StandardEngine[server].StandardHost[server].StandardContext[]|#]
    [#|2005-08-23T11:45:18.600+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.resource.webservices.rpc.server.http|_ThreadID=10;|JAXRPC.JAXRPCSERVLET.12: JAX-RPC context listener initializing|#]
    [#|2005-08-23T11:45:18.657+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.resource.webservices.rpc.server.http|_ThreadID=10;|JAXRPC.JAXRPCSERVLET.14: JAX-RPC servlet initializing|#]
    [#|2005-08-23T11:45:20.710+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Initializing Coyote HTTP/1.1 on port 18080|#]
    [#|2005-08-23T11:45:20.790+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Starting Coyote HTTP/1.1 on port 18080|#]
    [#|2005-08-23T11:45:21.125+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Initializing Coyote HTTP/1.1 on port 11043|#]
    [#|2005-08-23T11:45:21.144+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Starting Coyote HTTP/1.1 on port 11043|#]
    [#|2005-08-23T11:45:21.503+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Initializing Coyote HTTP/1.1 on port 14848|#]
    [#|2005-08-23T11:45:21.537+0100|INFO|sun-appserver-pe8.0.0_01|org.apache.coyote.http11.Http11Protocol|_ThreadID=10;|Starting Coyote HTTP/1.1 on port 14848|#]
    [#|2005-08-23T11:45:21.989+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.resource.jms|_ThreadID=10;|JMS5023: JMS service successfully started. Instance Name = imqbroker, Home = [/opt/Creator/SunAppServer8/imq/bin].|#]
    [#|2005-08-23T11:45:22.003+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=10;|[AutoDeploy] Enabling AutoDeployment service at :1124793922003|#]
    [#|2005-08-23T11:45:22.009+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=10;|CORE5053: Application onReady complete.|#]
    [#|2005-08-23T11:45:22.012+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=10;|Application server startup complete.|#]
    [#|2005-08-23T11:45:27.303+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=11;|ADM1041:Sent the event to instance:[ResourceDeployEvent -- deploy jcp/RaveGenerated_1124793926_NFDBPool]|#]
    [#|2005-08-23T11:45:28.918+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=11;|CORE5004: Resource Deployed: [jcp:RaveGenerated_1124793926_NFDBPool].|#]
    [#|2005-08-23T11:45:29.169+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=11;|ADM1041:Sent the event to instance:[ResourceDeployEvent -- deploy jdbc/jdbc/NFDB]|#]
    [#|2005-08-23T11:45:29.365+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.core|_ThreadID=11;|CORE5004: Resource Deployed: [jdbc:jdbc/NFDB].|#]
    [#|2005-08-23T11:45:31.996+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.deployment|_ThreadID=11;|DPL5109: EJBC - START of EJBC for [_linnfdb]|#]
    [#|2005-08-23T11:45:31.999+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.deployment|_ThreadID=11;|Processing beans ...|#]
    [#|2005-08-23T11:45:32.032+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.deployment|_ThreadID=11;|DPL5110: EJBC - END of EJBC for [_linnfdb]|#]
    [#|2005-08-23T11:45:32.915+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.deployment|_ThreadID=11;|Total Deployment Time: 2082 msec, Total EJB Compiler Module Time: 37 msec, Portion spent EJB Compiling: 1%
    Breakdown of EJBC Module Time: Total Time for EJBC: 37 msec, CMP Generation: 0 msec (0%), Java Compilation: 0 msec (0%), RMI Compilation: 0 msec (0%), JAX-RPC Generation: 19 msec (51%),
    |#]
    [#|2005-08-23T11:45:32.928+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.deployment|_ThreadID=11;|deployed with moduleid = _linnfdb|#]
    [#|2005-08-23T11:45:32.990+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=11;|ADM1041:Sent the event to instance:[ModuleDeployEvent -- deploy web/_linnfdb]|#]
    [#|2005-08-23T11:45:33.275+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=11;|ADM1041:Sent the event to instance:[ModuleDeployEvent -- enable web/_linnfdb]|#]
    [#|2005-08-23T11:45:33.352+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=11;|WEB0100: Loading web module [_linnfdb] in virtual server [server] at [linnfdb]|#]
    [#|2005-08-23T11:45:34.837+0100|WARNING|sun-appserver-pe8.0.0_01|org.apache.commons.beanutils.MethodUtils|_ThreadID=11;|Cannot use JVM pre-1.4 access bug workaround die to restrictive security manager.|#]
    [#|2005-08-23T11:45:35.346+0100|WARNING|sun-appserver-pe8.0.0_01|org.apache.commons.digester.Digester|_ThreadID=11;|[ConverterRule]{faces-config/converter} Merge(null,java.math.BigDecimal)|#]
    [#|2005-08-23T11:45:35.364+0100|WARNING|sun-appserver-pe8.0.0_01|org.apache.commons.digester.Digester|_ThreadID=11;|[ConverterRule]{faces-config/converter} Merge(null,java.math.BigInteger)|#]
    [#|2005-08-23T11:45:37.265+0100|INFO|sun-appserver-pe8.0.0_01|com.sun.faces.config.ConfigureListener|_ThreadID=11;|Application object verification completed successfully|#]
    [#|2005-08-23T11:45:37.396+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.tools.admin|_ThreadID=11;|ADM1042:Status of dynamic reconfiguration event processing:[success]|#]
    [#|2005-08-23T11:46:28.167+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.stream.out|_ThreadID=12;|login successfull145|#]
    [#|2005-08-23T11:46:28.961+0100|INFO|sun-appserver-pe8.0.0_01|javax.enterprise.system.stream.out|_ThreadID=12;|
    assigned to user query|#]
    [#|2005-08-23T11:46:34.715+0100|SEVERE|sun-appserver-pe8.0.0_01|javax.enterprise.system.container.web|_ThreadID=12;|ApplicationDispatcher[/linnfdb] Servlet.service() for servlet jsp threw exception
    javax.faces.el.EvaluationException: java.lang.NullPointerException      
    at
    com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:206)
         at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:154)
         at javax.faces.component.UISelectItems.getValue(UISelectItems.java:110)
         at com.sun.faces.util.Util.getSelectItems(Util.java:602)
         at com.sun.faces.renderkit.html_basic.MenuRenderer.getOptionNumber(MenuRenderer.java:488)
         at com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:465)
         at com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:430)
         at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:720)
         at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:443)
         at com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:130)
         at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:701)
         at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:435)
         at com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:113)
         at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:683)
         at javax.faces.component.UIData.encodeBegin(UIData.java:681)
         at javax.faces.webapp.UIComponentTag.encodeBegin(UIComponentTag.java:591)
         at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:543)
         at com.sun.faces.taglib.html_basic.DataTableTag.doEndTag(DataTableTag.java:491)
         at org.apache.jsp.NationalFaultsDataBase_jsp._jspx_meth_h_dataTable_0(NationalFaultsDataBase_jsp.java:581)
         at org.apache.jsp.NationalFaultsDataBase_jsp._jspx_meth_h_form_0(NationalFaultsDataBase_jsp.java:331)
         at org.apache.jsp.NationalFaultsDataBase_jsp._jspx_meth_f_view_0(NationalFaultsDataBase_jsp.java:291)
         at org.apache.jsp.NationalFaultsDataBase_jsp._jspService(NationalFaultsDataBase_jsp.java:182)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:102)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:282)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:263)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:210)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:861)
         at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:246)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:268)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:236)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:145)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:141)
         at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:718)
         at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:478)
         at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:413)
         at org.apache.catalina.core.ApplicationDispatcher.access$000(ApplicationDispatcher.java:77)
         at org.apache.catalina.core.ApplicationDispatcher$PrivilegedForward.run(ApplicationDispatcher.java:92)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:319)
         at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:130)
         at com.sun.jsfcl.app.ViewHandlerImpl.renderView(ViewHandlerImpl.java:181)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:221)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:246)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:268)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:236)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:145)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:141)
         at linnfdb.data.SecurityCheckFilter.doFilter(SecurityCheckFilter.java:102)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:246)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:268)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:218)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:188)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:145)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:141)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:214)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:168)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:144)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:133)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:539)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:134)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.security.web.SingleSignOn.invoke(SingleSignOn.java:254)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at com.sun.enterprise.web.VirtualServerValve.invoke(VirtualServerValve.java:209)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:114)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:109)
         at com.sun.enterprise.web.VirtualServerMappingValve.invoke(VirtualServerMappingValve.java:166)
         at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:107)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:522)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:936)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:165)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:683)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:604)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:542)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:647)
         at java.lang.Thread.run(Thread.java:534)
    Caused by: java.lang.NullPointerException
         at com.sun.jsfcl.data.ResultSetPropertyResolver$ColumnData.getSelectItems(ResultSetPropertyResolver.java:303)
         at com.sun.jsfcl.data.ResultSetPropertyResolver.getValue(ResultSetPropertyResolver.java:61)
         at com.sun.faces.el.impl.ArraySuffix.evaluate(ArraySuffix.java:167)
         at com.sun.faces.el.impl.ComplexValue.evaluate(ComplexValue.java:151)
         at com.sun.faces.el.impl.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:243)
         at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:173)
         ... 115 more
    |#]
    any help will be greatly appreciated. Pleaseeeeeeeeeeeeee can some get back to me.
    Cheers
    kumar

    hi,
    I just found that this exception is thrown from function
    public UIViewRoot createView(FacesContext context, String viewId) {
    UIViewRoot viewRoot = handler.createView(context, viewId);
    context.getExternalContext().getRequestMap().put(CREATED_VIEW, viewId);
    setupPageBean(context, viewRoot);
    return viewRoot;
    in viewHandlerImpl.java.
    Has anyone got ideas about this???
    Any help will be greatly appreciated.
    cheers
    kush

  • Servlet.service() Error. java.lang.OutOfMemoryError: Java heap space

    Hi All,
    I would be very grateful if you would draw some light for this error I got from running a online database connected image viewer (applet).
    The application is quite simple, applet connect to servlet, servlet send 3 SQL statements to MySQL and retrieve image info (Strings) and 50 Files (- JPEG image) from a online database, and then pass all of data to applet from servlet. The size of total of images is around 3.5 MB, and I've increased JVM memory to 128 MB by using code "-xmx128m".
    ? Do I need send images from servlet to applet individually rather than push them in one go
    ? Is there memory leak in my codes
    Please see the codes below:
    private ExamViewerApplet.CaseInfo[] getCaseInfoArray(int examID, Connection conn) throws SQLException{...}   
    private ExamViewerApplet.ExamInfo getExamInfo(int examID, Connection conn) throws SQLException{...}
    private String processObject(Object object, ObjectOutputStream oos)    {
        Integer examID = (Integer) object;
        Connection conn  = null;    
        ExamViewerApplet.ExamInfo examInfo = null;
        ExamViewerApplet.CaseInfo caseInfoArray[] = null;
        int[][] imageIndexArray = new int[30][5];
        ImageIcon[] imageArray = null;
        try {
            conn = new DBConnection().getConnection();
            examInfo = this.getExamInfo(examID, conn);
            caseInfoArray = this.getCaseInfoArray(examID, conn);
            PreparedStatement ps = conn.prepareStatement(RETRIEVE_IMAGES);
            ps.setInt(1,examID);
            ResultSet rs = ps.executeQuery();
            rs.last();
            int size = rs.getRow();
            rs.beforeFirst();
            imageArray = new ImageIcon[size];
            int imageIndex = 0;
            while(rs.next()){
                int caseID = rs.getInt("CaseID");
                int imageID = rs.getInt("ImageID");
                InputStream stream = null;
                ByteArrayOutputStream output = null;
                try {
                    stream = rs.getBinaryStream("Image");
                    output = new ByteArrayOutputStream();
                    byte buf[] = new byte[1024];
                    int len;
                    while((len = stream.read(buf)) > 0){
                        output.write(buf, 0, len);
                    ImageIcon icon = new ImageIcon(output.toByteArray());
                    imageArray[imageIndex] = icon;
                    imageIndexArray[caseID][0] += 1;
                    imageIndexArray[caseID][imageID] = imageIndex;
                    ++imageIndex;
                } catch (IOException ex) {
                    log("Error, when reading byte array from image input stream from database");
                } finally{
                    try {
                        stream.close();
                        output.close();
                    } catch (IOException ex) {
                        log("Error, when tring to close image input stream from Database");
        } catch (ClassNotFoundException classNotFoundException) {//somecode...
        } catch (SQLException sQLException) {//somecode...
        }finally{
            try {
                conn.close();
            } catch (SQLException ex) {//somecode...
        String result;
        if(examInfo != null && caseInfoArray != null && imageIndexArray != null && imageArray != null ){
            result = "The transaction was successed!";
            try {
                oos.writeObject(examInfo);
                oos.writeObject(caseInfoArray);
                oos.writeObject(imageIndexArray);
                oos.writeObject(imageArray);
            } catch (IOException ex) {
                result = "The transaction was failed!";
        }else{
            result = "The transaction was failed!";
        return result;
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {      
        ObjectInputStream inputStreamFromApplet = null;
        Object object = null;
        try {
            inputStreamFromApplet = new ObjectInputStream(request.getInputStream());
            object = inputStreamFromApplet.readObject();
            ObjectOutputStream oos = new ObjectOutputStream(response.getOutputStream());
            String returnValue = this.processObject(object, oos);           
            oos.writeObject(returnValue);
            oos.flush();
            oos.close();       
        } catch (ClassNotFoundException classNotFoundException) {
            classNotFoundException.printStackTrace();
        } finally{            
            inputStreamFromApplet.close();
    } And the error messages I got here is:
    SEVERE: Servlet.service() for servlet ExamViewerServlet threw exception
    java.lang.OutOfMemoryError: Java heap space
            at javax.swing.ImageIcon.writeObject(ImageIcon.java:411)
            at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:592)
            at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:917)
            at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1339)
            at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1290)
            at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1079)
            at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1251)
            at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075)
            at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:302)
            at ExamViewerServlet.processObject(ExamViewerServlet.java:147)
            at ExamViewerServlet.processRequest(ExamViewerServlet.java:176)
            at ExamViewerServlet.doPost(ExamViewerServlet.java:217)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
            at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
            at java.lang.Thread.run(Thread.java:595)Please help.
    Linqing
    Edited by: discovery_java on Feb 1, 2010 2:12 PM

    wire the code into a simple unit test, then run a profiler on it to see where the memory is going. You need the help of these kind of tools to track down memory issues, before that it is only guesswork what might be soaking it all up.

  • Service() method of JSP.

    Hi,
    Can the service method of a JSP (after it gets converted to Servlet) be overriden? that is can we change the service method of a JSP page.
    thnx

    No all code goes to service method. If You use a declaration syntax <%! %>, the code between this tags isn't compiled into the service method but separately. Docs. AFAIK java doesn't support inline functions.

Maybe you are looking for