Dan,
I think you are right. Anyway, adding the following into my weblogic.xml
to ask weblogic not to reload our servlet all the time, does fix our
problem.
<container-descriptor>
<servlet-reload-check-secs>-1</servlet-reload-check-secs>
</container-descriptor>
Thanks a lot for your help.
Tong
Daniel Kulp <[EMAIL PROTECTED]>
04/07/2008 01:46 PM
Please respond to
[email protected]
To
[email protected]
cc
Tong <[EMAIL PROTECTED]>
Subject
Re: CXF Service End Points reloaded every time in WebLogic
Everything I can think of really has nothing to do with CXF.
1) Timestamp on the war/ear is from a computer that has it's clock set
wrong. Basically, if the war is "built in the future" according to the
machine running weblogic, it might think the war has changed when it
really hasn't.
2) Likewise, if the "exploded" form has files in it with timestamps newer
than the war, that could be an issue.
3) Potentially, if something writes a file or something into the exploded
dir, weblogic might detect that as a change and reload. I'm think temp
files or something.
In anycase, I don't think any of those really would be due to CXF.
Dan
On Monday 07 April 2008, Tong wrote:
> Hi Glen,
>
> In this case, what happens is that WebLogic unloads our web app
> altogether and reloads almost every time or every other time a new
> request comes in. When I traced into CXF source code, I see the "init"
> and "destroy" method of CXFServlet gets called all the time.
>
> Do you know anything that will cause WebLogic to unload our web app?
>
> Thanks
> Tong
>
> Glen Mazza-2 wrote:
> > I have not worked with this type of problem before. Possible
> > guesses:
> >
> > 1.) Anything in our WebLogic docs[1] that may be relevant for your
> > problem?
> >
> > 2.) We have two types of configuration for web services--via a
> > cxf-servlet.xml file and directly through Spring configuration[2].
> > If you try the cxf-servlet.xml method, does the problem go away? It
> > might be something Spring-related that is causing the
> > reinitialization to be occurring each time.
> >
> > HTH,
> > Glen
> >
> > [1]
> > http://cwiki.apache.org/confluence/display/CXF20DOC/AppServerGuide#A
> >ppServerGuide-WebLogic [2]
> > http://cwiki.apache.org/CXF20DOC/configuration.html#Configuration-Se
> >rverconfigurationfiles
> >
> > Am Samstag, den 05.04.2008, 11:14 -0700 schrieb stevewu:
> >> Hi all,
> >>
> >> I deployed my web services in WebLogic with an EAR file.Every time
> >> I access
> >> a web service it rebuild all the end points defined in
> >> cxf-servlet.xml. Is
> >> there some parameters that I can set, so that the endpoints will be
> >> build only once when I start the service?
> >>
> >> Entries in cxf-servlet.xml
> >> <?xml version="1.0" encoding="UTF-8"?>
> >>
> >> <beans xmlns="http://www.springframework.org/schema/beans"
> >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >> xmlns:cxf="http://cxf.apache.org/core"
> >> xmlns:wsa="http://cxf.apache.org/ws/addressing"
> >> xmlns:jaxws="http://cxf.apache.org/jaxws"
> >> xmlns:soap="http://cxf.apache.org/bindings/soap"
> >> xsi:schemaLocation="
> >> http://www.springframework.org/schema/beans
> >> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
> >> http://cxf.apache.org/bindings/soap
> >> http://cxf.apache.org/schemas/configuration/soap.xsd
> >> http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
> >> http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd">
> >>
> >>
> >>
> >> <jaxws:endpoint
> >> id="LoginService"
> >> implementor="com.myworld.ws.jaxws.provider.LoginProvider"
> >> wsdlLocation="WEB-INF/wsdl/Login.wsdl"
> >> address="/LoginService">
> >> <jaxws:features>
> >> <bean class="org.apache.cxf.feature.LoggingFeature"/>
> >> </jaxws:features>
> >> </jaxws:endpoint>
> >> ......
> >> </beans>
> >>
> >> Below is the top part of the console output before it rebuild the
> >> end points.
> >>
> >>
> >> Apr 5, 2008 12:38:59 PM org.apache.cxf.transport.servlet.CXFServlet
> >> loadSpringBus
> >> INFO: Load the bus without application context
> >> log4j:WARN No appenders could be found for logger
> >> (org.apache.cxf.bus.spring.BusApplicationContext).
> >> log4j:WARN Please initialize the log4j system properly.
> >> Apr 5, 2008 12:39:04 PM
> >> org.apache.cxf.configuration.spring.ConfigurerImpl
> >> <init>
> >> INFO: Could not find the configuration file cxf.xml on the
> >> classpath. Apr 5, 2008 12:39:06 PM
> >> org.apache.cxf.transport.servlet.AbstractCXFServlet
> >> replaceDestinationFactory
> >> INFO: Replaced the http destionFactory with servlet transport
> >> factory Apr 5, 2008 12:39:06 PM
> >> org.apache.cxf.transport.servlet.CXFServlet loadAdditionalConfig
> >> INFO: Build endpoints from config-location:
> >> /WEB-INF/cxf-servlet.xml
--
J. Daniel Kulp
Principal Engineer, IONA
[EMAIL PROTECTED]
http://www.dankulp.com/blog