Servlet Reloading

Client: Internet Explorer version 4.0.
Server: Weblogic 4.5 on Windows NT 4.0 using JDK1.1.X.
I have included the following in my weblogic.properties file.
weblogic.httpd.servlet.classpath=/xyz;/xyz/test
weblogic.httpd.servlet.reloadCheckSecs=10
These directories ( /xyz;/xyz/test ) are completely separate from the
WebLogic install directories.
I have replaced the servlet class files in /xyz and /xyz/test with newer
class files but I don’t see the updated output even after I close Internet
explorer and try it again.
NOTE:
(1) I am invoking unregistered servlets
(2) I understand that the custom classloader from Weblogic needs to be
invoked. I have made sure that the NT system CLASSPATH variable makes no
reference to /xyz OR /xyz/test directories.
(3) I have altered the weblogic.class.path to include \ (Root dir) so that I
can invoke the custom servlets with a URL such as
http://myDomain/servlet/xyz.First OR
http://myDomain/servlet/xyz.test.Second.
Am I missing something?

you'll probably get a faster answer by posting this on the oas forum.
or the ias 9i forum

Similar Messages

  • How to make servlets reloadable in iplanet web server in solaris??

    hi all,
    does anyone know how to make servlets reloadable in iplanet ??? Thanks for help

    Hi there,
    I think your question is about "Dynamic Class Reloading", also named as Hot deployment. and the following lines may be helpful.
    iAS 6.0 SP3 and later version supports new hot deployment features through dynamic class
    reloading of EJBs.By default, dynamic servlet, EJB and registered JSP reloading is disabled in iPlanet Application Server.
    To enable dynamic reloading of servlets, EJBs and registered JSPs, perform the following steps:
    1.Start iPlanet Registry Editor, kregedit, and modify the Disable value under the Versioning key:
    SOFTWARE/iPlanet/Application Server/6.0/CCS0/SYSTEM_JAVA/Versioning
    2.Set the Disable value to 0 (By default, the Disable value is set to 1)
    3.Restart iPlanet Application Server to enable the change
    To hot deploy your application, simply compile and replace the file in the appropriate directory or, use iasdeploy to redeploy
    applications.
    I recommand you to check out the iAS's release notes (http://docs.iplanet.com/docs/manuals/ias/60/sp3/rn_sp3.html#20766) for more infomation.
    Good luck
    Shen Jie
    Developer Technical Support
    Sun Microsystems
    http://sun.com/developers/support

  • Dynamic Servlet reload activation in Weblogic 6.0 using web applications

    Dynamic Servlet reload activation in Weblogic 6.0 using web applications
              Add the next lines to your web.xml file
              <context-param>
              <param-name>weblogic.httpd.servlet.reloadCheckSecs</param-name>
              <param-value>0</param-value>
              </context-param>
              <context-param>
              <param-name>weblogic.httpd.servlet.classpath</param-name>
              <param-value>C:/bea/wlserver6.0/config/myServer/applications/MyApp/WEB-INF/serverclasses</param-value>
              </context-param>
              Register your servlet on web.xml file.
              <servlet>
              <servlet-name>Test</servlet-name>
              <servlet-class>Test</servlet-class>
              </servlet>
              <servlet-mapping>
              <servlet-name>Test</servlet-name>
              <url-pattern>/Test/*</url-pattern>
              </servlet-mapping>
              <servlet>
              Create a directory under WEB-INF called "serverclasses"
              copy your servlet(also directories under serverclasses if your class has a package).
              Don't forget to remove from \classes the same servlet class file.
              I hope it could be helpfull for the community.
              Regards
              

    Dynamic Servlet reload activation in Weblogic 6.0 using web applications
              Add the next lines to your web.xml file
              <context-param>
              <param-name>weblogic.httpd.servlet.reloadCheckSecs</param-name>
              <param-value>0</param-value>
              </context-param>
              <context-param>
              <param-name>weblogic.httpd.servlet.classpath</param-name>
              <param-value>C:/bea/wlserver6.0/config/myServer/applications/MyApp/WEB-INF/serverclasses</param-value>
              </context-param>
              Register your servlet on web.xml file.
              <servlet>
              <servlet-name>Test</servlet-name>
              <servlet-class>Test</servlet-class>
              </servlet>
              <servlet-mapping>
              <servlet-name>Test</servlet-name>
              <url-pattern>/Test/*</url-pattern>
              </servlet-mapping>
              <servlet>
              Create a directory under WEB-INF called "serverclasses"
              copy your servlet(also directories under serverclasses if your class has a package).
              Don't forget to remove from \classes the same servlet class file.
              I hope it could be helpfull for the community.
              Regards
              

  • Servlet reloading doesn't work

    Running WL 5.1 SP6 and can't get servlet reloading to work. Have the
              necessary lines in weblogic.properties:
              weblogic.httpd.servlet.classpath=<my classpath>
              weblogic.httpd.servlet.reloadCheckSecs=1
              The servlets are in a web app so I have the web app's WEB-INF/classes, where
              the servlets reside, in weblogic.httpd.servlet.classpath.
              Possibly this is a problem only with web apps? Anyone else run into this?
              Thanks.
              

    From my understanding, putting the servlet classes in the WEB-INF/classes
              directory eliminates the need to put them into any classpath (servlet, weblogic,
              or otherwise). Put them back into the WEB-INF /classes directory and make sure
              that this directory is not in the weblogic or servlet classpath.
              Hope this helps,
              Robert
              Paul Folbrecht wrote:
              > Ok, that makes sense. But, I tried what you suggested in your mail- moving
              > them to /servletclasses instead of /classes, and putting that directory on
              > the servlet classpath with this line:
              >
              > weblogic.httpd.servlet.classpath=e:/development/Projects/ExampleWebApp/deplo
              > yment/Web-inf/servletclasses
              >
              > I then get a ClassNotFoundException when trying to hit any servlet. Don't
              > know what could be wrong.
              >
              > Mike Reiche <[email protected]> wrote in message
              > news:[email protected]...
              > >
              > > Well, you have to figure something else out or put up with that
              > > behavior.
              > >
              > > As long as the servlet classes are in your WEBLOGICCLASSPATH, they
              > > will not get reloaded. The servlet class loader first tries to
              > > get the servlet class from the 'parent' class loader - and if it
              > > can find it there, it will not load a new one. That is why your
              > > modified servlets do not get reloaded.
              > >
              > > Mike
              > >
              > > "Paul Folbrecht" <[email protected]> wrote:
              > > >I'm afraid I can't agree. Also, I tried it, and it doesn't
              > > >work. Putting
              > > >servlets in WEB-INF/servletclasses results in ClassNotFoundExceptions
              > > >on
              > > >the servlet. The server doesn't know about this directory-
              > > >why should it?
              > > >There is no such directory mentioned anywhere in the J2EE
              > > >webapp spec. I
              > > >see only WEB-INF/classes mentioned.
              > > >
              > > >Also, the servlet classpath is explicity set in weblogic.properties
              > > >as I
              > > >noted below.
              > > >
              > > >In addition,
              > > >Mike Reiche <[email protected]> wrote in message
              > > >news:[email protected]...
              > > >>
              > > >> The servlets should be in something like WEB-INF/servletclasses
              > > >> which is ONLY in weblogic.httpd.servlet.classpath.
              > > >>
              > > >> You say you have them in WEB-INF/classes, which is also
              > > >in
              > > >WEBLOGICCLASSPATH
              > > >> (?) so they won't be reloaded.
              > > >>
              > > >> Mike
              > > >>
              > > >>
              > > >>
              > > >> "Paul Folbrecht" <[email protected]> wrote:
              > > >> >Running WL 5.1 SP6 and can't get servlet reloading
              > > >to
              > > >> >work. Have the
              > > >> >necessary lines in weblogic.properties:
              > > >> >
              > > >> >weblogic.httpd.servlet.classpath=<my classpath>
              > > >> >weblogic.httpd.servlet.reloadCheckSecs=1
              > > >> >
              > > >> >The servlets are in a web app so I have the web app's
              > > >> >WEB-INF/classes, where
              > > >> >the servlets reside, in weblogic.httpd.servlet.classpath.
              > > >> >
              > > >> >Possibly this is a problem only with web apps? Anyone
              > > >> >else run into this?
              > > >> >
              > > >> >Thanks.
              > > >> >
              > > >> >
              > > >> >
              > > >>
              > > >
              > > >
              > >
              

  • Disable servlet reload

              I need to disable servlet reload(WLS 7 SP4) for performance reason. I set the
              servlet-reload-check-secs to -1 in the container-descriptor of the web.xml of
              my war file. However when I deploy my war file, from the admin console the "Reload
              Period" is set to 1. Is there a way to make the deployment set the default "Reload
              Period" to -1 during deployment? I hate to deploy, change "Reload Period" from
              console, shutdown server, them restart server. Thanks.
              

    Daniel Lo wrote:
              > I need to disable servlet reload(WLS 7 SP4) for performance reason. I set the
              > servlet-reload-check-secs to -1 in the container-descriptor of the web.xml of
              > my war file. However when I deploy my war file, from the admin console the "Reload
              > Period" is set to 1. Is there a way to make the deployment set the default "Reload
              > Period" to -1 during deployment? I hate to deploy, change "Reload Period" from
              > console, shutdown server, them restart server. Thanks.
              You can use the following in your web.xml
              <context-param>
              <param-name>weblogic.servlet.reloadCheckSecs</param-name>
              <param-value>-1</param-value>
              </context-param>
              Nagesh
              

  • Servlet reloading not working with WLS 5.1 sp8

              I downloaded and installed WLS 5.1's sp8 to fix the "java.net.SocketException: Connection aborted by peer: socket write error"
              problem. Although that problem is fixed, I have found that, however, the servlet (automatic) reloading does not
              work anymore. If I remove the sp8 from my Java system classpath and WL classpath (i.e. not using sp8), then
              the servler reloading works fine.
              Does anybody experience similar problem or have I forgot to do something?
              WLS properties/env vars setting:
              - weblogic.httpd.servlet.reloadCheckSecs=0
              - WEBLOGIC_CLASSPATH=%WEBLOGIC_HOME%\lib\weblogic510sp8.jar;...
              - JAVA_CLASSPATH=%WEBLOGIC_HOME%\lib\weblogic510sp8boot.jar;...
              Thanks in advance for any help.
              

              I've experienced the same problem with both sp6 and sp8. In both cases I performed several test, including
              - varied the value of weblogic.httpd.servlet.reloadCheckSecs
              - changes to the package depth the servlet belonged to
              - changes to the string length of the package names the servlet belonged to
              At best, the servlet would reload sometimes. I've moved back to sp5 and the problem has subsided.
              Note: I did not try registering the servlet to see how that would effect the dynamic reloading.
              Hope this helps
              - Dave
              "Michel Dinh" <[email protected]> wrote:
              >
              >I downloaded and installed WLS 5.1's sp8 to fix the "java.net.SocketException: Connection aborted by peer: socket write error"
              >problem. Although that problem is fixed, I have found that, however, the servlet (automatic) reloading does not
              >work anymore. If I remove the sp8 from my Java system classpath and WL classpath (i.e. not using sp8), then
              >the servler reloading works fine.
              >
              >
              >Does anybody experience similar problem or have I forgot to do something?
              >
              >WLS properties/env vars setting:
              >
              >- weblogic.httpd.servlet.reloadCheckSecs=0
              >- WEBLOGIC_CLASSPATH=%WEBLOGIC_HOME%\lib\weblogic510sp8.jar;...
              >- JAVA_CLASSPATH=%WEBLOGIC_HOME%\lib\weblogic510sp8boot.jar;...
              >
              >Thanks in advance for any help.
              

  • Weblogic servlet reload won't work

    Please help! I am using WLS 5.1 sp6 (NT) and trying to use the auto reload setting for the servlets but weblogic won't refresh the change dynamically. I have set the following entries in the weblogic.properties file:
              weblogic.httpd.servlet.classpath=D:/weblogic/myserver/servletclasses
              weblogic.httpd.servlet.reloadCheckSecs=1
              Thanks in advance.
              Peter
              

              It would be really nice if WL would report that with an error/warning message.
              Mike
              Robert Patrick <[email protected]> wrote:
              >Make sure that this directory is NOT in either the Java CLASSPATH or
              >the weblogic.class.path...
              >
              >"Peter C. Penny" wrote:
              >
              >> Please help! I am using WLS 5.1 sp6 (NT) and trying to use the auto
              >reload setting for the servlets but weblogic won't refresh the change
              >dynamically. I have set the following entries in the weblogic.properties
              >file:
              >>
              >> weblogic.httpd.servlet.classpath=D:/weblogic/myserver/servletclasses
              >> weblogic.httpd.servlet.reloadCheckSecs=1
              >>
              >> Thanks in advance.
              >>
              >> Peter
              >
              

  • Servlet Reloading Problem!

    JSP + Bean is OK!
    But, Servlet + Bean occur a reloading problem.(Reloading does not happen)
    For example,
    1) TestClass.java (Bean)
    public class TestClass {
    private String txt;
    public TestClass() {
    txt = "Test!!"; ---(1)
    public String getTxt() {
    return txt;
    2) Test.java (Servlet)
    public class Test extends HttpServlet {
    public void service(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
    TestClass testClass = new TestClass();
    PrintWriter out = res.getWriter();
    out.println(testClass.getTxt());
    In above examples, though I change txt String(number (1)) Bean reloading does not occur. So old txt String shows.
    In Tomcat, such problem does not happen.
    Is this a problem of OC4J?
    Thanks.
    null

    Well, only servlets are supposed to be reloaded, not their dependent classes.
    If you are using Tomcat 4.x, then there might be an explanation. It seems that Tomcat 4.x will simply reload the entire web app context if it detects that a servlet (not a JSP!) has changed. Just define a servlet context listener to see that.
    Regards,
    Vadym

  • Servlet reload

    hi there,
    how can i reload servlet? i use destroy(), but if i start webpage with servlet again, init() didn`t run. i have to restart tomcat to run init() :(
    thx a lot
    have nice day

    with tomcat:
    http://yourserver:yourport/manager/reload?path=/yourapppath
    Look at Mnager app HOWTO in tomcat doc

  • Need to enable feature of servlet reloading in Tomcat

    Hello
    I wants to enable autoreload feature in tomcat so that i need not to stop tomcat web server again and again
    Thanks

    Hi,
    As the above information i tried to add line <DefaultContext reloadable="true" />. But it is not working for me.
    Here is my server.xml file.
    <?xml version='1.0' encoding='utf-8'?>
    <!--
    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements. See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License. You may obtain a copy of the License at
    http://www.apache.org/licenses/LICENSE-2.0
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
    -->
    <!-- Note: A "Server" is not itself a "Container", so you may not
    define subcomponents such as "Valves" at this level.
    Documentation at /docs/config/server.html
    -->
    <Server port="8005" shutdown="SHUTDOWN">
    <!--APR library loader. Documentation at /docs/apr.html -->
    <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
    <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
    <Listener className="org.apache.catalina.core.JasperListener" />
    <!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
    <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
    <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
    <!-- Global JNDI resources
    Documentation at /docs/jndi-resources-howto.html
    -->
    <GlobalNamingResources>
    <!-- Editable user database that can also be used by
    UserDatabaseRealm to authenticate users
    -->
    <Resource name="UserDatabase" auth="Container"
    type="org.apache.catalina.UserDatabase"
    description="User database that can be updated and saved"
    factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
    pathname="conf/tomcat-users.xml" />
    </GlobalNamingResources>
    <!-- A "Service" is a collection of one or more "Connectors" that share
    a single "Container" Note: A "Service" is not itself a "Container",
    so you may not define subcomponents such as "Valves" at this level.
    Documentation at /docs/config/service.html
    -->
    <Service name="Catalina">
    <!-- Define properties for each web application -->
    <DefaultContext reloadable="true" />
    <!--The connectors can use a shared executor, you can define one or more named thread pools-->
    <!--
    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
    maxThreads="150" minSpareThreads="4"/>
    -->
    <!-- A "Connector" represents an endpoint by which requests are received
    and responses are returned. Documentation at :
    Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
    Java AJP Connector: /docs/config/ajp.html
    APR (HTTP/AJP) Connector: /docs/apr.html
    Define a non-SSL HTTP/1.1 Connector on port 8080
    -->
    <Connector port="8080" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" />
    <!-- A "Connector" using the shared thread pool-->
    <!--
    <Connector executor="tomcatThreadPool"
    port="8080" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" />
    -->
    <!-- Define a SSL HTTP/1.1 Connector on port 8443
    This connector uses the JSSE configuration, when using APR, the
    connector should be using the OpenSSL style configuration
    described in the APR documentation -->
    <!--
    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
    maxThreads="150" scheme="https" secure="true"
    clientAuth="false" sslProtocol="TLS" />
    -->
    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    <!-- An Engine represents the entry point (within Catalina) that processes
    every request. The Engine implementation for Tomcat stand alone
    analyzes the HTTP headers included with the request, and passes them
    on to the appropriate Host (virtual host).
    Documentation at /docs/config/engine.html -->
    <!-- You should set jvmRoute to support load-balancing via AJP ie :
    <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
    -->
    <Engine name="Catalina" defaultHost="localhost">
    <!--For clustering, please take a look at documentation at:
    /docs/cluster-howto.html (simple how to)
    /docs/config/cluster.html (reference documentation) -->
    <!--
    <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
    -->
    <!-- The request dumper valve dumps useful debugging information about
    the request and response data received and sent by Tomcat.
    Documentation at: /docs/config/valve.html -->
    <!--
    <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
    -->
    <!-- This Realm uses the UserDatabase configured in the global JNDI
    resources under the key "UserDatabase". Any edits
    that are performed against this UserDatabase are immediately
    available for use by the Realm. -->
    <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
    resourceName="UserDatabase"/>
    <!-- Define the default virtual host
    Note: XML Schema validation will not work with Xerces 2.2.
    -->
    <Host name="localhost" appBase="webapps"
    unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    <!-- SingleSignOn valve, share authentication between web applications
    Documentation at: /docs/config/valve.html -->
    <!--
    <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
    -->
    <!-- Access log processes all example.
    Documentation at: /docs/config/valve.html -->
    <!--
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
    prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
    -->
    </Host>
    </Engine>
    </Service>
    </Server>
    Can anyone tell me what i need to do to enable reloading?
    Thanks,
    Ram.

  • Clarification needed on servlet class reloading

              I have a question about servlet reloading in WLS6.0
              Let's assume i have version 1.0 of a SomeServlet.class loaded in WLS.
              Client are accessing it currently.
              Now let's say i create version 1.1 of SomeServlet.class and i want to deploy it in WLS.
              I have the "servlet reloading" turned ON.
              So that means that version 1.1 will be immediately loaded by WLS right?
              Question: Will WLS first unload version1.0? If so, what happens to the clients who are using version 1.0?
              Will they get a ClassCastException? Or will they be abruptly switched from 1.0 to 1.1? Will they see any any error at all?
              Thanks.
              PS: If i had deployed the servlet in a WAR file, will the same rules apply? In other words, if i replace the WAR file will a newer version, what will happen to the classes from the previous WAR file that are being used by clients.
              Is there a document explaining "how WLS reloads/hot-deploys servlets/ejb"? I understand that WLS6.0 uses a new "classloader architecture" that is different from WLS5.1.0. Some document to explain the differences would be helpful. Thanks.
              

    The new version will be loaded immediately into a new classloader.
              The old version will remain (in its old classloader) until there are no
              longer any references to it (which will happen when clients that were
              using the old version have completed their operations).
              mark
              Jeff Mathers wrote:
              > Did you ever get clarification on this point?
              >
              > I am trying to figure out how to force WLS 6 to reload servlets following a
              > re-compile. Your message hinted at a way to do this. Can you fill me in?
              >
              > Jeff Mathers
              > IT R&D
              > RWJPRI - Johnson & Johnson
              >
              > "R" <[email protected]> wrote in message
              > news:[email protected]...
              > >
              > > I have a question about servlet reloading in WLS6.0
              > >
              > > Let's assume i have version 1.0 of a SomeServlet.class loaded in WLS.
              > > Client are accessing it currently.
              > > Now let's say i create version 1.1 of SomeServlet.class and i want to
              > deploy it in WLS.
              > > I have the "servlet reloading" turned ON.
              > > So that means that version 1.1 will be immediately loaded by WLS right?
              > >
              > > Question: Will WLS first unload version1.0? If so, what happens to the
              > clients who are using version 1.0?
              > > Will they get a ClassCastException? Or will they be abruptly switched from
              > 1.0 to 1.1? Will they see any any error at all?
              > >
              > > Thanks.
              > >
              > > PS: If i had deployed the servlet in a WAR file, will the same rules
              > apply? In other words, if i replace the WAR file will a newer version, what
              > will happen to the classes from the previous WAR file that are being used by
              > clients.
              > >
              > > Is there a document explaining "how WLS reloads/hot-deploys servlets/ejb"?
              > I understand that WLS6.0 uses a new "classloader architecture" that is
              > different from WLS5.1.0. Some document to explain the differences would be
              > helpful. Thanks.
              

  • Session expires when servlets are reloaded

    Hi
    I'm using Sun Java System Web server 7.0 on Windows 2003 server. When I update my servlets the session expires. I update the .reload filen and the servlets reloads perfect, but my users session expires.
    Is it posible to reload servlets without session expires ? And how do I do that ?
    Regards,
    Stian Martinsen
    Norway
    Edited by: StianNorway on Sep 14, 2007 3:59 AM

    I don't know about Sun's server but with Tomcat, if you are careful to make sure that every object bound to session (directly or indirectly) implements java.io.Serializable, Tomcat will save all your session information to disk when the application restarts so they are all live when it comes back up.
    Read the documentation for your server and see if it has a similar feature.

  • Error 404 -- Not Found, when a Servlet is invoked from browser

    Obviously, I have not been able to configure my WebLogic Server 5.1.0 to run
              even the simplest servlet.
              I painstakenly went through all the steps that are listed in the WebLogic
              Server 5.1.0 documentation on the Web to enable servlets, but obviously, I
              have missed a step somewhere.
              I have modified the weblogic.properties file as per all the instrustions,
              but the server simply won't recognize any servlets, not even the SqlServlet
              that came with the server as an example.
              It would require more than 1 exchange of posts to resolve it for me, and I
              am wondering if one of you is willing to work with me on this until I have
              managed to configure the server to make a servlet work on it.
              The server does function as a Web server as I can run the index.html
              document by entering the URL: http://localhost:7001/index.html
              I am pasting the contents of weblogic.properties file below to get the
              person who is willing to help me started.
              The machine I have is a Pentium III with Windows 2000 Professional on it.
              It's a home machine and the WebLogic server is the freely downloadable
              version. I am using it to prepare for a potential contract work.
              I have managed to modify setEnv.cmd file and have managed to compile the
              SqlServlet.java, which is an example servlet. Neither this particular
              servlet nor a HelloWorld type of very basic servlet I have written are
              recognized by the server.
              As you can see from my weblogic.properties file (pasted at the end of this
              post), the SqlServlet has been registered. I have also uncommented the lines
              to allow for the following type of URL:
              http://localhost:7001/servlet/myServlet
              Thanks!
              Anjum Jaleel
              CONTENTS OF MY weblogic.properties file
              # THE WEBLOGIC PROPERTIES FILE
              # This file, which conforms to the java.util.Properties file
              # definition, configures your WebLogic products. You cannot run
              # WebLogic Server without setting required configuration properties in this
              # file. Required properties are marked and appear first in the file.
              # Details on each entry and important information about configuration
              # and security are documented on our website. Please go to:
              # http://www.weblogic.com/docs51/admindocs/properties.html
              # for full instructions on how to edit this file.
              # You do not need to include properties in this file unless you want to
              # change the default, embedded property. Some properties on the
              # AdminProps page are not listed here because the default property
              # is being used. You can change the default by adding the property and
              # its value to this file.
              # You cannot set weblogic.system.home in this file, since the WebLogic
              Server
              # must know where home is in order to retrieve this file. You can
              # change WebLogic home on the command line when you start the
              # WebLogic Server.
              # CLUSTER USERS: Note that the (shared) per-cluster properties file should
              # contain most all of the properties in this file. The only properties
              # that potentially belong in a per-server properties file for a server
              # running in a cluster are the registration (startup class) of pinned
              # RMI objects, and a few tuning properties that may be different for
              # servers in the cluster, depending upon hardware and memory. If you use
              # a per-server properties file, please REMOVE all properties except those
              # that are specifically required in the per-server properties file. You
              # can find specific notes on clusters by searching through this file for
              # "CLUSTER USERS".
              # The way this file is organized:
              # Core properties (includes REQUIRED and RECOMMENDED)
              # Core system properties
              # Core security-related properties
              # Core security-related properties for SSL
              # Core HTTPD administrative properties
              # Optional properties
              # Administrator properties
              # System properties
              # System startup files
              # System shutdown files
              # Security-related properties for Workspaces
              # Jolt for WebLogic properties
              # WebLogic Enterprise Connectivity properties
              # WebLogic File properties
              # WebLogic JMS demo properties
              # WebLogic RMI demo properties
              # WebLogic EJB demo properties
              # WebLogic XML demo properties
              # WebLogic ZAC demo properties
              # HTTPD administrative properties
              # WebLogic JDBC driver properties
              # WebLogic JDBC connection pool management
              # WebLogic demo connection pool
              # WebLogic HTTP Servlet properties
              # Proxy servlet registration
              # Classpath servlet registration
              # File servlet registration
              # ServerSideInclude servlet registration
              # PageCompileServlet (used by JHTML)
              # JSPServlet (used by JSP)
              # ServletServlet registration
              # Servlet reload properties
              # Servlet ACLs
              # WebLogic JSP properties
              # WebLogic JHTML properties
              # WebLogic RMI over IIOP properties
              # User-written and demo servlet registrations
              # CORE PROPERTIES
              # You should set these before you start the WebLogic Server the first time.
              # If you need more instructions on individual properties in this
              # section, check the same section in the Optional Properties, where
              # we've left the long explanations. Or, better yet, go to our
              # website and read all about properties, at:
              # http://www.weblogic.com/docs51/admindocs/properties.html
              # CORE SYSTEM PROPERTIES
              # TCP/IP port number at which the WebLogic Server listens for connections
              weblogic.system.listenPort=7001
              # CORE SECURITY-RELATED PROPERTIES
              # Read important information about security at:
              # http://www.weblogic.com/docs51/admindocs/properties.html
              # REQUIRED: The system password MUST be set in order to start the
              # WebLogic Server. This password is case-sensitive, at least 8 characters.
              # The username for the privileged user is ALWAYS "system".
              # This username and password also includes httpd access (see
              # HTTPD properties below).
              weblogic.password.system=lovkako1
              # RECOMMEND Set to 'everyone' if HTTPD is enabled
              weblogic.allow.execute.weblogic.servlet=everyone
              # Set individual ACLs to restrict access to HTTP-related resources,
              # such as the Administration servlets.
              # To make your own servlets generally available, follow this
              # pattern (provide a weblogic.allow.execute) for your packages and
              # set ACLs as appropriate.
              # CORE SECURITY-RELATED PROPERTIES FOR SSL
              # Read important information about SSL at:
              # http://www.weblogic.com/docs51/classdocs/API_secure.html
              # Enable SSL
              # (default if property not defined is false)
              weblogic.security.ssl.enable=true
              # SSL listen port
              weblogic.system.SSLListenPort=7002
              # Servlets for SSL
              # Authentication servlet for creating tokens for applets
              weblogic.httpd.register.authenticated=weblogic.t3.srvr.ClientAuthenticationS
              ervlet
              # Limits number of unclaimed stored tokens
              weblogic.security.certificateCacheSize=3
              # Capture CA root of client servlet
              weblogic.httpd.register.AdminCaptureRootCA=admin.AdminCaptureRootCA
              # Certificates for SSL
              # Name of acceptable CA roots
              # For client authentication change value to a valid .pem file
              #weblogic.security.clientRootCA=SecureServerCA.pem
              # Server certificates for SSL
              weblogic.security.certificate.server=democert.pem
              weblogic.security.key.server=demokey.pem
              weblogic.security.certificate.authority=ca.pem
              # registration for certificate generator servlet
              weblogic.httpd.register.Certificate=utils.certificate
              weblogic.allow.execute.weblogic.servlet.Certificate=system
              # CORE HTTPD ADMINISTRATIVE PROPERTIES
              # True permits the HTTPD to run (default)
              # Uncomment this property to disable HTTPD
              weblogic.httpd.enable=true
              # If authentication is required, add username/password for each user
              # who will be included in an ACL, as in this commented-out example:
              #weblogic.password.peter=#8gjsL4*
              # OPTIONAL PROPERTIES
              # These properties affect the behavior of the WebLogic Server.
              # You only need to set these properties if you want
              # to change the default setting, which is the property shown.
              # ADMINISTRATOR PROPERTIES
              # Administrator properties are optional information properties,
              # particularly useful for clusters.
              #weblogic.administrator.location=3355 California Drive, West Hampshire, CA
              94104
              #weblogic.administrator.name=Joe Administrator
              #weblogic.administrator.phone=1 415 555 1234
              # SYSTEM PROPERTIES
              # System properties in this section are set to system defaults
              # Performance pack. The shared library must be accessible from your
              # PATH (NT) or from your shared library path (UNIX; the name of the
              # variable varies: LD_LIBRARY_PATH, SHLIB_PATH, etc.)
              weblogic.system.nativeIO.enable=true
              # Outputs logging information to the console as well as to the log file
              weblogic.system.enableConsole=true
              # Sets the directory or URL for the WebLogic Admin help pages
              # The help pages are shipped in the "docs/adminhelp" directory, in the
              # default document root in public_html
              weblogic.system.helpPageURL=g:/weblogic/myserver/public_html/docs51/adminhel
              p/
              # If you prefer to access the most recent help pages, you can do so online
              # by commenting out the previous property and uncommenting this one:
              #weblogic.system.helpPageURL=http://www.weblogic.com/docs51/adminhelp/
              # Properties for tuning the server's performance
              # Number of WebLogic Server execute threads.
              weblogic.system.executeThreadCount=15
              # Other optional system properties
              # Limits size of weblogic.log (in K) and versions old log
              weblogic.system.maxLogFileSize=1024
              # Adjust minimum length of password
              weblogic.system.minPasswordLen=8
              # UNIX only: If running on port 80 on UNIX, enable the setUID program
              #weblogic.system.enableSetUID=false
              # UNIX only: Unprivileged user to setUID to after starting up
              # WebLogic Server on port 80
              #weblogic.system.nonPrivUser=nobody
              # CLUSTER-SPECIFIC PROPERTIES
              # Cluster-specific properties in this section are set to system defaults.
              # CLUSTER USERS: Note that ALL Cluster-specific properties should be set
              # in the per-cluster properties file ONLY.
              # Time-to-live (number of hops) for the cluster's multicast messages
              # (default 1, range 1-255).
              #weblogic.cluster.multicastTTL=1
              # Sets the load-balancing algorithm to be used between
              # replicated services if none is specified. If not specified,
              # round-robin is used.
              #weblogic.cluster.defaultLoadAlgorithm=round-robin
              # SERVER-SPECIFIC CLUSTER PROPERTIES
              # Cluster-related properties in this section are set to system defaults.
              # CLUSTER USERS: Note that these server-specific cluster-related properties
              # should be set in the per-server properties file ONLY.
              # Sets the weight of the individual server for the weight-based
              load-balancing.
              # Range is 0 - 100.
              # Larger numbers increase the amount of traffic routed to this server.
              #weblogic.system.weight=100
              # SYSTEM STARTUP FILES - Examples
              # CLUSTER USERS: Note that ONLY startup registrations for pinned RMI
              # objects should be registered in the per-server properties file.
              # All other startup classes should be registered in the per-cluster
              # properties file.
              # For more info on writing and using startup file, see the
              # Developers Guide "Writing a WebLogic Client application," at
              # http://www.weblogic.com/docs51/classdocs/API_t3.html
              # Register a startup class by giving it a virtual name and
              # supplying its full pathname.
              #weblogic.system.startupClass.[virtual_name]=[full_pathname]
              # Add arguments for the startup class
              #weblogic.system.startupArgs.[virtual_name]={argname]=[argvalue]
              # This example shows the entry for examples/t3client/StartupQuery.java
              #weblogic.system.startupClass.doquery=examples.t3client.StartupQuery
              #weblogic.system.startupArgs.doquery=\
              # query=select * from emp,\
              # db=jdbc:weblogic:pool:demoPool
              # SYSTEM SHUTDOWN FILES - Examples
              # For more info on writing and using shutdown file, see the
              # Developers Guide "Writing a WebLogic Client application," at
              # http://www.weblogic.com/docs51/classdocs/API_t3.html
              # Register a shutdown class by giving it a virtual name and
              # supplying its full pathname.
              #weblogic.system.shutdownClass.[virtual_name]=[full_pathname]
              # Add arguments for the shutdown class
              #weblogic.system.shutdownArgs.[virtualName]={argname]=[argvalue]
              # This example shows the entry for examples/t3client/ShutdownTest.java
              #weblogic.system.shutdownClass.ShutdownTest=examples.t3client.ShutdownTest
              #weblogic.system.shutdownArgs.ShutdownTest=\
              # outfile=c:/temp/shutdown.log
              # SECURITY-RELATED PROPERTIES FOR WORKSPACES
              # For backward compatibility, the following entries disable Access
              # Control on Workspaces
              weblogic.allow.read.weblogic.workspace=everyone
              weblogic.allow.write.weblogic.workspace=everyone
              # JOLT FOR WEBLOGIC PROPERTIES
              # These properties configure a BEA Jolt connection pool for use with
              # the simpapp and bankapp examples, and register a servlet for use with
              # with the simpapp example. The default server address provided here
              # points to a public TUXEDO server that is hosted by BEA for use with
              # this example.
              # Servlet registration for simpapp example:
              #weblogic.httpd.register.simpapp=examples.jolt.servlet.simpapp.SimpAppServle
              t
              # Pool creation and cleanup
              # note this example is set up to work with the public
              # demo TUXEDO server available from BEA's website:
              #weblogic.system.startupClass.demojoltpoolStart=\
              # bea.jolt.pool.servlet.weblogic.PoolManagerStartUp
              #weblogic.system.startupArgs.demojoltpoolStart=\
              # poolname=demojoltpool,\
              # appaddrlist=//beademo1.beasys.com:8000,\
              # failoverlist=//beademo1.beasys.com:8000,\
              # minpoolsize=1,\
              # maxpoolsize=3
              #weblogic.system.shutdownClass.demojoltpoolStop=\
              # bea.jolt.pool.servlet.weblogic.PoolManagerShutDown
              #weblogic.system.shutdownArgs.demojoltpoolStop=\
              # poolname=demojoltpool
              # WEBLOGIC ENTERPRISE CONNECTIVITY PROPERTIES
              # The registrations enable a BEA IIOP connection pool and
              # register servlets for use with the simpapp and university examples.
              # Configure for your environment and uncomment to use.
              # Uncommenting these properties requires WebLogic Enterprise Connectivity
              # and an operating WebLogic Enterprise Server.
              # Servlet registration for simpapp servlet example
              #weblogic.httpd.register.SimpappServlet=\
              # examples.wlec.servlets.simpapp.SimpappServlet
              #weblogic.allow.execute.weblogic.servlet.SimpappServlet=everyone
              # Servlet registration for simpapp EJB example
              # (You'll need to add the wlec_ejb_simpapp.jar to the
              # weblogic.ejb.deploy property in this file.)
              #weblogic.httpd.register.ejbSimpappServlet=\
              # examples.wlec.ejb.simpapp.ejbSimpappServlet
              #weblogic.allow.execute.weblogic.servlet.ejbSimpappServlet=everyone
              # Pool creation and cleanup for the simpapp example
              #weblogic.CORBA.connectionPool.simplepool=\
              # appaddrlist=//wlehost:2468,\
              # failoverlist=//wlehost:2468,\
              # minpoolsize=2,\
              # maxpoolsize=3,\
              # username=wleuser,\
              # userrole=developer,\
              # domainname=simpapp
              # Servlet registration for university Servlet example:
              #weblogic.httpd.register.UniversityServlet=\
              # examples.wlec.servlets.university.UniversityServlet
              #weblogic.allow.execute.weblogic.servlet.UniversityServlet=everyone
              # Pool creation and cleanup for the University example:
              #weblogic.CORBA.connectionPool.Univpool=\
              # appaddrlist=//wlehost:2498,\
              # failoverlist=//wlehost:2498,\
              # minpoolsize=2,\
              # maxpoolsize=3,\
              # username=wleuser,\
              # userrole=developer,\
              # apppassword=wlepassword,\
              # domainname=university
              # WEBLOGIC FILE PROPERTIES
              # Maps a volume name to a path, for client file read/write
              #weblogic.io.fileSystem.[volumeName]=[fullPathName]
              # WEBLOGIC JMS DEMO PROPERTIES
              # CLUSTER USERS: Note that ALL JMS deployment should be done in the
              # per-cluster properties file ONLY.
              # You set up a JDBC connection pool if you want persistent messages
              # (including durable subscriptions). To use JMS and EJBs in the same
              # transaction, both must use the same JDBC connection pool. Uncomment
              # the following property to use the default JDBC connection pool
              # 'demo', which is defined in the Demo connection pool section of this file.
              #weblogic.jms.connectionPool=demoPool
              # The JMS Webshare example demonstrates how the ClientID for a
              # durable subscriber is configured in the connection factory:
              #weblogic.jms.topic.webshareTopic=jms.topic.webshareTopic
              #weblogic.jms.connectionFactoryName.webshare=jms.connection.webshareFactory
              #weblogic.jms.connectionFactoryArgs.webshare=ClientID=webshareUser
              #weblogic.httpd.register.webshare=examples.jms.webshare.WebshareServlet
              # The JMS trader example shows how to use JMS with an EJB. In addition
              # to uncommenting the following properties, you must also set up and
              # deploy the EJB example examples.ejb.basic.statelessSession.Trader in
              # ejb_basic_statelessSession.jar to try out this JMS example:
              #weblogic.jms.topic.exampleTopic=javax.jms.exampleTopic
              #weblogic.jms.connectionFactoryName.trader=jms.connection.traderFactory
              #weblogic.jms.connectionFactoryArgs.trader=ClientID=traderReceive
              #weblogic.httpd.register.jmstrader=examples.jms.trader.TraderServlet
              # Registers the underlying servlet
              #weblogic.httpd.register.jmssender=examples.jms.sender.SenderServlet
              # These properties are used with the ServerReceive JMS example,
              # which demonstrates how to establish a JMS message consumer
              # in a startup class:
              #weblogic.system.startupClass.serverReceive=\
              # examples.jms.startup.ServerReceive
              #weblogic.system.startupArgs.serverReceive=\
              # connectionFactory=javax.jms.TopicConnectionFactory,\
              # topic=javax.jms.exampleTopic
              # These properties are used with the PoolReceive JMS example,
              # which demonstrates how to establish a pool of JMS message consumers
              # in a startup class:
              #weblogic.system.startupClass.poolReceive=\
              # examples.jms.startup.PoolReceive
              #weblogic.system.startupArgs.poolReceive=\
              # connectionFactory=javax.jms.TopicConnectionFactory,\
              # topic=javax.jms.exampleTopic
              #weblogic.allow.create.weblogic.jms.ServerSessionPool=everyone
              # WEBLOGIC RMI DEMO PROPERTIES
              # CLUSTER USERS: Note that pinned RMI objects should be registered
              # in the per-server properties file ONLY. All other RMI startup
              # classes should be registered in the per-cluster properties file.
              # Remote classes registered at startup after the pattern:
              #weblogic.system.startupClass.[virtualName]=[fullPackageName]
              # These examples can be compiled to see RMI in action. Uncomment to use:
              #weblogic.system.startupClass.hello=examples.rmi.hello.HelloImpl
              #weblogic.system.startupClass.multihello=examples.rmi.multihello.HelloImpl
              #weblogic.system.startupClass.stock=examples.rmi.stock.StockServer
              # WEBLOGIC EJB DEMO PROPERTIES
              # CLUSTER USERS: Note that ALL EJB deployment should be done in the
              # per-cluster properties file ONLY.
              # See WebLogic Demo Connection Pool below for a connection pool
              # to use with these examples.
              # Deploys EJBeans. Uncomment the appropriate lines below and
              # modify DBMS-related info and paths to match your particular installation:
              #weblogic.ejb.deploy=\
              # g:/weblogic/myserver/ejb_basic_beanManaged.jar, \
              # g:/weblogic/myserver/ejb_basic_containerManaged.jar, \
              # g:/weblogic/myserver/ejb_basic_statefulSession.jar, \
              # g:/weblogic/myserver/ejb_basic_statelessSession.jar, \
              # g:/weblogic/myserver/ejb_extensions_finderEnumeration.jar, \
              # g:/weblogic/myserver/ejb_extensions_readMostly.jar, \
              # g:/weblogic/myserver/ejb_subclass.jar, \
              # g:/weblogic/myserver/jolt_ejb_bankapp.jar
              # Servlet used by the EJB basic beanManaged example
              # Uncomment to use:
              #weblogic.httpd.register.beanManaged=\
              # examples.ejb.basic.beanManaged.Servlet
              # Add a list of users (set the password with
              weblogic.password.[username]=XXX)
              # to set an ACL for this servlet:
              #weblogic.allow.execute.weblogic.servlet.beanManaged=user1,user2,etc
              #weblogic.password.user1=user1Password
              #weblogic.password.user2=user2Password
              # WEBLOGIC XML DEMO PROPERTIES
              # These properties are required to run the XML examples.
              # Uncomment to use.
              # CLUSTER USERS: Note that ALL servlets should be set up
              # in the per-cluster properties file ONLY.
              #weblogic.httpd.register.StockServlet=examples.xml.http.StockServlet
              # BizTalk example properties
              #weblogic.jms.queue.tradeIncoming=biztalk.jms.tradeIncoming
              #weblogic.jms.queue.tradeError=biztalk.jms.tradeError
              #weblogic.httpd.register.BizTalkServer=examples.xml.biztalk.BizHttpProtocolA
              dapter
              #weblogic.httpd.initArgs.BizTalkServer=bizQueue=biztalk.jms.tradeIncoming
              # WEBLOGIC ZAC DEMO PROPERTIES
              # These registrations enable the ZAC Publish Wizard.
              weblogic.zac.enable=true
              # Set the publish root for a WebLogic Server. Edit and
              # uncomment to use.
              #weblogic.zac.publishRoot=g:/weblogic/zac
              # Set an ACL for each package you publish. The [name] is
              # the "Package name" you assign in the ZAC Publish Wizard.
              # Publish a package, edit this property, and uncomment to use.
              #weblogic.allow.read.weblogic.zac.[name]=[user list]
              #weblogic.allow.write.weblogic.zac.[name]=system
              # HTTPD ADMINISTRATIVE PROPERTIES
              # Enables logging of HTTPD info in common log format and
              # sets the log file name (default is "access.log" in "myserver")
              weblogic.httpd.enableLogFile=true
              weblogic.httpd.logFileName=access.log
              # Tracks HTTPD requests with events delivered to WEBLOGIC.LOG.HTTPD
              weblogic.httpd.enableEvents=false
              # Enables HTTP sessions
              weblogic.httpd.session.enable=true
              # Sets an optional cookie name. The default name is "WebLogicSession".
              # Prior to version 4.0, the default was "TengahSession". To make
              # this backward compatible with cookies generated from previous
              # installations, you should set this property to "TengahSession".
              # Uncomment this line and set this to any string of your choice,
              # or comment out this property to use the default.
              #weblogic.httpd.session.cookie.name=WebLogicSession
              # MIME types
              weblogic.httpd.mimeType.text/html=html,htm
              weblogic.httpd.mimeType.image/gif=gif
              weblogic.httpd.mimeType.image/jpeg=jpeg,jpg
              weblogic.httpd.mimeType.application/pdf=pdf
              weblogic.httpd.mimeType.application/zip=zip
              weblogic.httpd.mimeType.application/x-java-vm=class
              weblogic.httpd.mimeType.application/x-java-archive=jar
              weblogic.httpd.mimeType.application/x-java-serialized-object=ser
              weblogic.httpd.mimeType.application/octet-stream=exe
              weblogic.httpd.mimeType.text/vnd.wap.wml=wml
              weblogic.httpd.mimeType.text/vnd.wap.wmlscript=wmls
              weblogic.httpd.mimeType.application/vnd.wap.wmlc=wmlc
              weblogic.httpd.mimeType.application/vnd.wap.wmlscriptc=wmlsc
              weblogic.httpd.mimeType.image/vnd.wap.wbmp=wbmp
              # In seconds, the keep-alive for HTTP and HTTPS requests
              weblogic.httpd.http.keepAliveSecs=60
              weblogic.httpd.https.keepAliveSecs=120
              # WEBLOGIC JDBC DRIVER PROPERTIES
              # Enables JDBC driver logging and sets the file name for the log
              # The weblogic.jdbc.logFile is placed in the per-server
              # directory (default is "myserver")
              weblogic.jdbc.enableLogFile=false
              weblogic.jdbc.logFileName=jdbc.log
              # WEBLOGIC JDBC CONNECTION POOL MANAGEMENT
              # CLUSTER USERS: Note that ALL JDBC connection pools should be set up
              # in the per-cluster properties file ONLY.
              # For creating JDBC connection pools. This example shows a connection
              # pool called "oraclePool" that allows 3 T3Users "guest," "joe," and "jill"
              # to use 4 JDBC connections (with a potential for up to 10 connections,
              # incremented by two at a time, with a delay of 1 second between each
              # attempt to connect to the database), to an Oracle database server called
              # "DEMO." If more than 4 connections are opened, after 15 minutes, unused
              # connections are dropped from the pool until only 4 connections remain
              open.
              # Every 10 minutes, any unused connections in the pool are tested and
              # refreshed if they are not viable.
              #weblogic.jdbc.connectionPool.oraclePool=\
              # url=jdbc:weblogic:oracle,\
              # driver=weblogic.jdbc.oci.Driver,\
              # loginDelaySecs=1,\
              # initialCapacity=4,\
              # maxCapacity=10,\
              # capacityIncrement=2,\
              # allowShrinking=true,\
              # shrinkPeriodMins=15,\
              # refreshMinutes=10,\
              # testTable=dual,\
              # props=user=SCOTT;password=tiger;server=DEMO
              # Get more details on each argument for this property in the
              # Administrators Guide on setting properties at:
              # http://www.weblogic.com/docs51/admindocs/properties.html
              # Set up ACLs for this connection pool with the following:
              #weblogic.allow.reserve.weblogic.jdbc.connectionPool.oraclePool=\
              # guest,joe,jill
              #weblogic.allow.reset.weblogic.jdbc.connectionPool.oraclePool=\
              # joe,jill
              #weblogic.allow.shrink.weblogic.jdbc.connectionPool.oraclePool=\

    Problem Resolved!
              I found out that I had 'http' instead of 'httpd' in the statement where I
              registered my servlet, SqlServlet.
              Now, I am having difficulty with hot deployment. The server is returning
              error 404.
              

  • DoGet() method is being called every 3inutes repetitively in servlet

    HI,
    There are 2 managed servers in one unix box.
    i have one war application deployed in cluster level. This war application will search the logs and will give particular content as a result.
    The Jsp page will send the request and it is able to get the correct results if the operation completes within 3 minutes. if there are so many logs, it is giving unreliable results as war application is sending the request again and again in the interval of 3 mins.
    Request parameters are getting by servlet, and this servlet will create the unix shellscript in background and it will execute in a box.
    0-3 mins 1st .sh creating and executing..
    3-6 mins 2nd .sh creats and starts the execution, once the 1 one is completed...
    its becomes infinite loop...
    after some time Browser is going to diagnostic error state..
    i did debugging there i can see doGet method of servlet is being called for every 3 minutes..
    to avoid this i tried to give some parameters in weblogic.xml file...but its not working..
    please fine below weblogic.xml file
    ====================================
    <?xml version='1.0' encoding='UTF-8'?>
    <weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.2/weblogic-web-app.xsd">
    <session-descriptor>
    </session-descriptor>
    <jsp-descriptor>
    <page-check-seconds>-1</page-check-seconds>
    <debug>true</debug>
    </jsp-descriptor>
    <container-descriptor>
    <resource-reload-check-secs>-1</resource-reload-check-secs>
    <servlet-reload-check-secs>-1</servlet-reload-check-secs>
    <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>
    <logging>
    <log-filename>/wls_domains/b2borap2/application_MT/logs/messagetracker.log</log-filename>
    </logging>
    </weblogic-web-app>
    =======================================================
    and web.xml file is
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <listener>
    <listener-class>
    com.tm.messagetracker.listeners.MTrackerSession
    </listener-class>
    </listener>
    <servlet>
    <servlet-name>Controller</servlet-name>
    <servlet-class>com.tm.messagetracker.Controller</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>Controller</servlet-name>
    <url-pattern>*.do</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>30</session-timeout>
    </session-config>
    <mime-mapping>
    <extension>txt</extension>
    <mime-type>text/plain</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>html</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>htm</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>index.html</welcome-file>
    </welcome-file-list>
    </web-app>
    =========================================
    please find the servlet code..
    public class Controller extends HttpServlet
    public void init()
    public void doGet(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException
         System.out.println("Iam at doGet");
    res.setContentType("text/html");
    HttpSession session = req.getSession (false);
    if (session==null) {
         // We Send a Redirect
         res.sendRedirect("./../pages/login.jsp");
    //HttpSession session = req.getSession(true);
    boolean loginTravelled = new Boolean((String)session.getAttribute("loginTravelled")).booleanValue();
    UserVerification uv = new UserVerification();
    MTUtils mTUtils = new MTUtils();
    Properties systemProps = SerializeProperties.doLoad();
    int noOFrecordsPerPage = 10;
    if (loginTravelled)
         System.out.println("loginTravelled value :"+loginTravelled);
    String pageId = req.getParameter("pageId");
    String actionId = req.getParameter("actionId");
    if (actionId.equals("logout"))
    session.removeAttribute("CompleteSearchRecords");
    session.removeAttribute("DisplaySearchRecords");
    session.invalidate();
    System.gc();
    res.sendRedirect("./../pages/login.jsp");
    else if (pageId.equals("faq"))
    if (actionId.equals("homepage"))
    System.gc();
    res.sendRedirect("./../pages/login.jsp");
    else if (actionId.equals("download"))
    String fileName = req.getParameter("fileName");
    String originalFileName = req.getParameter("originalFileName");
    doDownload(req, res, fileName, originalFileName);
    else if (pageId.equals("login"))
    if (actionId.equals("downloads"))
    List downloadListRecords = null;
    try
    downloadListRecords = DownloadableRecords.getDownloadableRecords(new File(systemProps.getProperty("faq")));
    catch (Exception e)
    e.printStackTrace();
    session.setAttribute("DownloadListRecords", downloadListRecords);
    res.sendRedirect("./../pages/downloads.jsp");
    else if (actionId.equals("userlogin"))
    String userId = req.getParameter("uname").trim();
    String password = req.getParameter("passwd").trim();
    if ((userId != null) && (userId.length() > 0) && (password != null) && (password.length() > 0))
    if ((userId.equals("superadmin")) && (password.equals("superadmin")))
    res.sendRedirect("./../pages/admin.jsp");
    String userAuthMsg = UserVerification.verifyUser(userId, password);
    if (userAuthMsg.equals("adminuser"))
    res.sendRedirect("./../pages/admin.jsp");
    else if (userAuthMsg.equals("guestuser"))
    res.sendRedirect("./../pages/search.jsp");
    else if (userAuthMsg.equals("wrongpassword"))
    res.sendRedirect("./../pages/login.jsp?userAuthDispMsg=Sorry wrong password");
    else if (userAuthMsg.equals("unauthorizeduser"))
    res.sendRedirect("./../pages/login.jsp?userAuthDispMsg=User is not Authorized ");
    else if ((userAuthMsg.equals("adminpropsNotFound")) || (userAuthMsg.equals("guestpropsNotFound")))
    res.sendRedirect("./../pages/error.jsp?userAuthDispMsg=user configurations not found , Please contact admin");
    else
    res.sendRedirect("./../pages/login.jsp?userAuthDispMsg=UserName or password cannot be null");
    else if (pageId.equals("adminPage"))
    if (actionId.equals("adduser"))
    CommonProperties adminProps = MTrackerProperties.getAdminProps();
    CommonProperties guestProps = MTrackerProperties.getGuestProps();
    String userId = req.getParameter("adduname").trim();
    String password = req.getParameter("passwd").trim();
    String userAuthMsg = uv.verifyUser(userId);
    if (userAuthMsg.equals("adminuser"))
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=Admin user with name exists");
    else if (userAuthMsg.equals("guestuser"))
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=Guest user with name exists");
    else
    String userType = req.getParameter("usertype").trim();
    if (userType.equals("admin"))
    adminProps.addProperty(userId, password);
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=User " + userId + " added successfully");
    else
    guestProps.addProperty(userId, password);
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=User " + userId + " added successfully");
    else if (actionId.equals("deleteuser"))
    CommonProperties adminProps = MTrackerProperties.getAdminProps();
    CommonProperties guestProps = MTrackerProperties.getGuestProps();
    String userId = req.getParameter("deluname").trim();
    String userAuthMsg = uv.verifyUser(userId);
    if (userAuthMsg.equals("adminuser"))
    adminProps.deleteProperty(userId);
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=Admin user " + userId + " deleted");
    else if (userAuthMsg.equals("guestuser"))
    guestProps.deleteProperty(userId);
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=Guest user " + userId + " deleted");
    else
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=User " + userId + " does not exists ");
    else if (actionId.equals("updatescript"))
    String perlScriptLoc = req.getParameter("perlloc").trim();
    SerializeProperties.doSave(perlScriptLoc);
    try
    Thread.sleep(2500L);
    catch (InterruptedException e) {
    e.printStackTrace();
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=Perl script location updated with -> " + perlScriptLoc);
    else if (actionId.equals("updatepropertyfile"))
    String propfileLoc = req.getParameter("proploc").trim();
    SerializeProperties.doSave(propfileLoc);
    try
    Thread.sleep(2500L);
    catch (InterruptedException e) {
    e.printStackTrace();
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=Property file location updated with -> " + propfileLoc);
    else if (actionId.equals("searchLink"))
    res.sendRedirect("./../pages/search.jsp");
    if (actionId.equals("cleanup"))
    String resultsDir = systemProps.getProperty("results");
    mTUtils.deleteFiles(new File(resultsDir), 24);
    res.sendRedirect("./../pages/admin.jsp?userAuthDispMsg=Cleanup Done !!!");
    else if (pageId.equals("searchPage"))
         System.out.println("Start searching process Here");
         if (actionId.equals("search"))
         System.out.println("Started searching process");
    String tboxValue = req.getParameter("tbox");
    String tareaValue = req.getParameter("tarea");
    String SearchString = "";
    String auditEnable = req.getParameter("audit");
    String errorEnable = req.getParameter("error");
    String debugEnable = req.getParameter("debug");
    String srchStartDate = req.getParameter("srchstartDate");
    String srchEndDate = req.getParameter("srchendDate");
    String srchInZipFile = "";
    if (req.getParameter("srchInZipFile") != null) {
    srchInZipFile = req.getParameter("srchInZipFile");
    String mode = req.getParameter("inputmode");
    try
    if (req.getParameter("recordsPerPage") != null)
    noOFrecordsPerPage = new Integer(req.getParameter("recordsPerPage")).intValue();
    catch (Exception e)
    res.sendRedirect("./../pages/error.jsp?userAuthDispMsg=recordsPerPage should be a number");
    if (mode.equals("single"))
    SearchString = tboxValue;
    else
    SearchString = tareaValue;
    String inputDir = systemProps.getProperty("inputs");
    String resultsDir = systemProps.getProperty("results");
    String inputFileName = new Integer(mTUtils.getRandom()).toString();
    File inputParams = new File(inputDir + "/" + inputFileName + ".properties");
    File inputTxt = new File(inputDir + "/" + inputFileName + ".txt");
    synchronized (inputParams) {
         System.out.println("inputParams"+inputParams);
    synchronized (inputTxt)
         System.out.println("inputtxt"+inputTxt);
    boolean saved = false;
    CommonProperties singleSerProps = new CommonProperties(inputParams);
    Properties searchProps = new Properties();
    searchProps.setProperty("search_from_date", srchStartDate);
    searchProps.setProperty("search_to_date", srchEndDate);
    searchProps.setProperty("force_zip_search", srchInZipFile);
    if ((SearchProperties.saveSingeSearchProps(singleSerProps, searchProps)) && (SearchProperties.saveSearchFile(inputTxt, SearchString)))
    if (mTUtils.genarateScript(auditEnable, debugEnable, errorEnable, srchInZipFile, inputFileName))
    if (mTUtils.runScript("sh", inputFileName))
    List tRecords = null;
    TrackingLogReader treader = new TrackingLogReader();
    try
    tRecords = treader.getRecords(new File(resultsDir), inputFileName);
    catch (Exception e)
    e.printStackTrace();
    if (tRecords == null)
    tRecords = new ArrayList();
    tRecords.add("No Records Found");
    String backEnb = "";
    String nextEnb = "";
    int fromRec = 0;
    int toRec = 0;
    if (tRecords.size() > noOFrecordsPerPage)
    toRec = noOFrecordsPerPage;
    backEnb = "false";
    nextEnb = "true";
    else
    toRec = tRecords.size();
    backEnb = "false";
    nextEnb = "false";
    List subList = tRecords.subList(fromRec, toRec);
    session.setAttribute("CompleteSearchRecords", tRecords);
    session.setAttribute("DisplaySearchRecords", subList);
    session.setAttribute("fromRec", new Integer(fromRec));
    session.setAttribute("toRec", new Integer(toRec));
    session.setAttribute("nextEnb", nextEnb);
    session.setAttribute("backEnb", backEnb);
    session.setAttribute("recsPerPage", new Integer(noOFrecordsPerPage));
    res.sendRedirect("./../pages/SearchResults.jsp");
    else {
    res.sendRedirect("./../pages/error.jsp?userAuthDispMsg=Problem in calling PERL system , Please contact admin");
    else
    res.sendRedirect("./../pages/error.jsp?userAuthDispMsg=Script not generated , Please contact admin");
    else
    res.sendRedirect("./../pages/error.jsp?userAuthDispMsg=Search input directory not found, Please contact admin ");
    //inputParams.delete();
    //inputTxt.delete();
    else if (pageId.equals("searchresults"))
    noOFrecordsPerPage = ((Integer)session.getAttribute("recsPerPage")).intValue();
    if (actionId.equals("newSearch"))
    session.removeAttribute("CompleteSearchRecords");
    session.removeAttribute("DisplaySearchRecords");
    session.removeAttribute("fromRec");
    session.removeAttribute("toRec");
    session.removeAttribute("recsPerPage");
    System.gc();
    res.sendRedirect("./../pages/search.jsp");
    else if (actionId.equals("first"))
    List completeRecords = (List)session.getAttribute("CompleteSearchRecords");
    int fromRec = 0;
    int toRec = 0;
    String backEnb = "";
    String nextEnb = "";
    if (completeRecords.size() > noOFrecordsPerPage)
    toRec = noOFrecordsPerPage;
    backEnb = "false";
    nextEnb = "true";
    else
    toRec = completeRecords.size();
    backEnb = "false";
    nextEnb = "false";
    List subList = completeRecords.subList(fromRec, toRec);
    session.setAttribute("CompleteSearchRecords", completeRecords);
    session.setAttribute("DisplaySearchRecords", subList);
    session.setAttribute("fromRec", new Integer(fromRec));
    session.setAttribute("toRec", new Integer(toRec));
    session.setAttribute("nextEnb", nextEnb);
    session.setAttribute("backEnb", backEnb);
    session.setAttribute("recsPerPage", new Integer(noOFrecordsPerPage));
    res.sendRedirect("./../pages/SearchResults.jsp");
    else if (actionId.equals("last"))
    List completeRecords = (List)session.getAttribute("CompleteSearchRecords");
    int fromRec = 0;
    int toRec = completeRecords.size();
    String backEnb = "";
    String nextEnb = "";
    if (noOFrecordsPerPage > completeRecords.size())
    fromRec = 0;
    backEnb = "false";
    nextEnb = "false";
    else
    fromRec = completeRecords.size() - noOFrecordsPerPage;
    backEnb = "true";
    nextEnb = "false";
    List subList = completeRecords.subList(fromRec, toRec);
    session.setAttribute("CompleteSearchRecords", completeRecords);
    session.setAttribute("DisplaySearchRecords", subList);
    session.setAttribute("fromRec", new Integer(fromRec));
    session.setAttribute("toRec", new Integer(toRec));
    session.setAttribute("nextEnb", nextEnb);
    session.setAttribute("backEnb", backEnb);
    session.setAttribute("recsPerPage", new Integer(noOFrecordsPerPage));
    res.sendRedirect("./../pages/SearchResults.jsp");
    else if (actionId.equals("back"))
    List completeRecords = (List)session.getAttribute("CompleteSearchRecords");
    int fromRec = ((Integer)session.getAttribute("fromRec")).intValue();
    int toRec = ((Integer)session.getAttribute("toRec")).intValue();
    toRec = fromRec;
    if (fromRec - noOFrecordsPerPage > 0)
    session.setAttribute("backEnb", "true");
    fromRec -= noOFrecordsPerPage;
    else
    fromRec = 0;
    session.setAttribute("backEnb", "false");
    session.setAttribute("nextEnb", "true");
    session.setAttribute("fromRec", new Integer(fromRec));
    session.setAttribute("toRec", new Integer(toRec));
    List subList = completeRecords.subList(fromRec, toRec);
    session.setAttribute("DisplaySearchRecords", subList);
    res.sendRedirect("./../pages/SearchResults.jsp");
    else if (actionId.equals("next"))
    List completeRecords = (List)session.getAttribute("CompleteSearchRecords");
    int fromRec = ((Integer)session.getAttribute("fromRec")).intValue();
    int toRec = ((Integer)session.getAttribute("toRec")).intValue();
    fromRec = toRec;
    if (toRec + noOFrecordsPerPage <= completeRecords.size())
    session.setAttribute("nextEnb", "true");
    toRec += noOFrecordsPerPage;
    else
    toRec = completeRecords.size();
    session.setAttribute("nextEnb", "false");
    session.setAttribute("backEnb", "true");
    session.setAttribute("fromRec", new Integer(fromRec));
    session.setAttribute("toRec", new Integer(toRec));
    List subList = completeRecords.subList(fromRec, toRec);
    session.setAttribute("DisplaySearchRecords", subList);
    res.sendRedirect("./../pages/SearchResults.jsp");
    else if (actionId.equals("download"))
    String fileName = req.getParameter("fileName");
    String originalFileName = req.getParameter("originalFileName");
    doDownload(req, res, fileName, originalFileName);
    else
    res.sendRedirect("./../pages/login.jsp?userAuthDispMsg=Invalid USER");
    public void doPost(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException
    doGet(req, res);
    private void doDownload(HttpServletRequest req, HttpServletResponse resp, String filename, String original_filename)
    throws IOException
    File f = new File(filename);
    int length = 0;
    ServletOutputStream op = resp.getOutputStream();
    ServletContext context = getServletConfig().getServletContext();
    String mimetype = context.getMimeType(filename);
    resp.setContentType(mimetype != null ? mimetype : "application/octet-stream");
    resp.setContentLength((int)f.length());
    resp.setHeader("Content-Disposition", "attachment; filename=\"" + original_filename + "\"");
    byte[] bbuf = new byte[10240];
    DataInputStream in = new DataInputStream(new FileInputStream(f));
    while ((in != null) && ((length = in.read(bbuf)) != -1))
    op.write(bbuf, 0, length);
    in.close();
    op.flush();
    op.close();
    =========================
    anyone please help me on above......Thanks in advance..

    Hi jleech,
    Thanks for the reply. But deleting all the temporary internet files as also the history files does not seem to have an effect. the doFilter is being called only at the second request. or did i miss anything??
    Please help. unable to complete the assignment because of this.
    Thank You,
    Phani Kanuri

  • Struts action classes not reloaded in WLS 8.1 SP5

    Hi,
              We are in the process of upgrading from WLS6.1 to WLS8.1(SP5). I installed WLS8.1 in development mode with no change to any of the default settings and got our app up and running. However, one issue that I noticed was that WLS8.1 is not reloading new classes copied int WEB-INF/classes directory within the webapp.
              I read the document at http://edocs.bea.com/wls/docs81/webapp/deployment.html#157139 and it clearly says that any changes to classes are automatically picked up.
              I have verified that "servlet-reload-check-secs" is set to 1. Is there any configuration item that I am missing here ?
              Thanks in advance,
              Prasad

    Hi,
              I am deploying my application on bea weblogic 8.1SP5........and it showing errors below::::while iit's working fine on sp4........
              JVMDG217: Dump Handler is Processing OutOfMemory - Please Wait.
              JVMDG315: JVM Requesting Heap dump file
              .........JVMDG318: Heap dump file written to /soft_dump/BEA815/user_projects/dom
              ains/mydomain/heapdump274442.1150373114.phd
              JVMDG303: JVM Requesting Java core file
              JVMDG304: Java core file written to /soft_dump/BEA815/user_projects/domains/mydo
              main/javacore274442.1150373147.txt
              JVMDG274: Dump Handler has Processed OutOfMemory.
              Is dere any solution for it?
              Thanks
              Samit Katiyar
              [email protected]

Maybe you are looking for