Client startet viel zu langsam ???

Status
Nicht offen für weitere Antworten.

pocketom

Bekanntes Mitglied
Wenn ich meinen CXF Client starte dann dauert es erstmal ein paar Sekunden bevor die Anfrage an den Dienst ausgeführt wird. Der Grund ist das Spring jede Menge Logging Messages ausgibt:

Code:
29.07.2009 15:43:18 org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.apache.cxf.bus.spring.BusApplicationContext@15dfd77: display name [org.apache.cxf.bus.spring.BusApplicationContext@15dfd77]; startup date [Wed Jul 29 15:43:18 CEST 2009]; root of context hierarchy
29.07.2009 15:43:18 org.apache.cxf.bus.spring.BusApplicationContext getConfigResources
INFO: No cxf.xml configuration file detected, relying on defaults.
29.07.2009 15:43:18 org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFO: Overriding bean definition for bean 'org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder': replacing [Root bean: class [org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder]; scope=singleton; abstract=false; lazyInit=false; autowireCandidate=true; autowireMode=0; dependencyCheck=0; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/C:/Java/apache-maven-2.1.0/repository/org/apache/cxf/cxf-rt-transports-http/2.1/cxf-rt-transports-http-2.1.jar!/META-INF/cxf/cxf-extension-http.fixml]] with [Root bean: class [org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder]; scope=singleton; abstract=false; lazyInit=false; autowireCandidate=true; autowireMode=0; dependencyCheck=0; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/C:/Java/apache-maven-2.1.0/repository/org/apache/cxf/cxf-rt-transports-http/2.1/cxf-rt-transports-http-2.1.jar!/META-INF/cxf/cxf-extension-http.fixml]]
29.07.2009 15:43:18 org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFO: Overriding bean definition for bean 'org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder': replacing [Root bean: class [org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder]; scope=singleton; abstract=false; lazyInit=false; autowireCandidate=true; autowireMode=0; dependencyCheck=0; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/C:/Java/apache-maven-2.1.0/repository/org/apache/cxf/cxf-rt-transports-http/2.1/cxf-rt-transports-http-2.1.jar!/META-INF/cxf/cxf-extension-http.fixml]] with [Root bean: class [org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder]; scope=singleton; abstract=false; lazyInit=false; autowireCandidate=true; autowireMode=0; dependencyCheck=0; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/C:/Java/apache-maven-2.1.0/repository/org/apache/cxf/cxf-rt-transports-http/2.1/cxf-rt-transports-http-2.1.jar!/META-INF/cxf/cxf-extension-http.fixml]]
29.07.2009 15:43:18 org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition
INFO: Overriding bean definition for bean 'org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory': replacing [Root bean: class [org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory]; scope=singleton; abstract=false; lazyInit=true; autowireCandidate=true; autowireMode=0; dependencyCheck=0; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/C:/Java/apache-maven-2.1.0/repository/org/apache/cxf/cxf-rt-transports-http/2.1/cxf-rt-transports-http-2.1.jar!/META-INF/cxf/cxf-extension-http.fixml]] with [Root bean: class [org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory]; scope=singleton; abstract=false; lazyInit=true; autowireCandidate=true; autowireMode=0; dependencyCheck=0; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/C:/Java/apache-maven-2.1.0/repository/org/apache/cxf/cxf-rt-transports-http/2.1/cxf-rt-transports-http-2.1.jar!/META-INF/cxf/cxf-extension-http.fixml]]
29.07.2009 15:43:18 org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
INFO: Bean factory for application context [org.apache.cxf.bus.spring.BusApplicationContext@15dfd77]: org.springframework.beans.factory.support.DefaultListableBeanFactory@a61164
29.07.2009 15:43:18 org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker postProcessAfterInitialization
INFO: Bean 'org.apache.cxf.bus.spring.Jsr250BeanPostProcessor' is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
29.07.2009 15:43:18 org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker postProcessAfterInitialization
INFO: Bean 'org.apache.cxf.bus.spring.BusExtensionPostProcessor' is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
29.07.2009 15:43:18 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
INFO: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@a61164: defining beans [cxf,org.apache.cxf.bus.spring.Jsr250BeanPostProcessor,org.apache.cxf.bus.spring.BusExtensionPostProcessor,org.apache.cxf.resource.ResourceManager,org.apache.cxf.configuration.Configurer,org.apache.cxf.binding.BindingFactoryManager,org.apache.cxf.transport.DestinationFactoryManager,org.apache.cxf.transport.ConduitInitiatorManager,org.apache.cxf.wsdl.WSDLManager,org.apache.cxf.phase.PhaseManager,org.apache.cxf.workqueue.WorkQueueManager,org.apache.cxf.buslifecycle.BusLifeCycleManager,org.apache.cxf.endpoint.ServerRegistry,org.apache.cxf.endpoint.ServerLifeCycleManager,org.apache.cxf.endpoint.ClientLifeCycleManager,org.apache.cxf.transports.http.QueryHandlerRegistry,org.apache.cxf.endpoint.EndpointResolverRegistry,org.apache.cxf.headers.HeaderManager,org.apache.cxf.catalog.OASISCatalogManager,org.apache.cxf.endpoint.ServiceContractResolverRegistry,org.apache.cxf.binding.soap.SoapBindingFactory,org.apache.cxf.binding.soap.SoapTransportFactory,org.apache.cxf.binding.soap.customEditorConfigurer,org.apache.cxf.jaxws.context.WebServiceContextResourceResolver,org.apache.cxf.jaxws.context.WebServiceContextImpl,org.apache.cxf.binding.xml.XMLBindingFactory,org.apache.cxf.ws.addressing.policy.AddressingAssertionBuilder,org.apache.cxf.ws.addressing.policy.AddressingPolicyInterceptorProvider,org.apache.cxf.ws.addressing.policy.UsingAddressingAssertionBuilder,org.apache.cxf.transport.local.LocalTransportFactory,org.apache.cxf.transport.http.policy.HTTPClientAssertionBuilder,org.apache.cxf.transport.http.policy.HTTPServerAssertionBuilder,org.apache.cxf.transport.http.ClientOnlyHTTPTransportFactory,org.apache.cxf.transport.http_jetty.JettyHTTPTransportFactory,org.apache.cxf.transport.jms.JMSTransportFactory,org.apache.cxf.management.jmx.InstrumentationManagerImpl]; root of factory hierarchy
29.07.2009 15:43:20 org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromWSDL
INFO: Creating Service {......
.......

Wie kann ich das unterdrücken bzw. kann ich die Anfrage von seiten des Clients an dieser Stelle irgendwie beschleunigen?
 

mvitz

Top Contributor
klar kannst du das Logging ausschalten, wie genau kommt aber auf das Logging Framework an.

Welches benutzt du?

Log4J, JCL, JUL, Logback, SLF4J ?
 

pocketom

Bekanntes Mitglied
Gute Frage. Ich hab den Code automatisch generiert mit WSDL2Java.

In meiner ServiceImplementation findet sich aber z.B.

import java.util.logging.Logger;

Dies scheinen mir aber auch nur die Logs vom Server selbst zu sein.



Über den Client selbst scheint es auch nicht zu klappen. Dort wird zwar ein Objeckt vom Typ der Serviceklasse instanziiert welches selbst wiederum abgeleitet ist von javax.xml.ws.Service, aber ich finde keine Konfigurationsmöglichkeiten. Schon beim instanziieren der Serviceklasse im Client tauchen die Logs auf. Leider finde ich in der Serviceklasse auch keine Hinweise auf den verwendentn Logger, auch im Sourcecode von javax.xml.ws.Service

Es ist wiegesagt Apache CXF mit Spring und läuft auf Tomcat6.x. Kannst du daraus Rückschlüsse auf den Logger ziehen? Ich habe nach diesem Tutorial gearbeitet Web Services with Spring 2.5 and Apache CXF 2.0 - Wheeler Software
 
Zuletzt bearbeitet:

mvitz

Top Contributor
Mit Client meinst du aber schon ein Programm, dass den Webservice aufruft oder meinst du die Serverseite, die den Service anbietet?

Du könntest halt bei den JARs gucken,

ob da commons-logging.jar oder Log4J.jar vorhanden ist.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
LimDul Rest-Client/DTOs aus JSON Ergebnis generieren Allgemeines EE 3
I Client Desktop -> Update in Browser? Allgemeines EE 0
Yamanuchi Glassfish 4 : Client Anzahl restriktieren Allgemeines EE 2
R Web-Applikation mit GWT- und Android-Client Allgemeines EE 0
B Ordner von Client an Server senden Allgemeines EE 2
J Client Request vom Server aus. Allgemeines EE 2
H SQL Daten von Webservice an Client übergeben Allgemeines EE 3
T Client IP ermitteln Allgemeines EE 3
C Objekte aus EJB an Client schicken Allgemeines EE 6
T JMX und ServiceMBean - Zugriff mittels Client Allgemeines EE 2
S Rich Client Application mit Eclipse/WebLogic/EclipseLink/EJB3 Allgemeines EE 2
C JMS Remote Client Allgemeines EE 5
G EJB client Allgemeines EE 4
W JBoss log dependencies aus jbossall-client.jar Allgemeines EE 7
W Client als Jar und die vielen Abhängigkeiten Allgemeines EE 2
P unique ID am Client Allgemeines EE 3
G XML vom Server zum Client Allgemeines EE 4
D Wohin mit Resourcen (Bilder, txt Dateien) im Application Client Allgemeines EE 3
J geschützter Bean zugriff mit einem Rich-Client Allgemeines EE 2
MQue Server -> Client zyklische Daten senden Allgemeines EE 20
K Glassfish Application Client Allgemeines EE 4
C EntityBean im GWT-Client Allgemeines EE 2
foobar Client-Jar und JPA-Entities für Remotzugriff Allgemeines EE 12
I Session-Attribute von Client zugänglich? Allgemeines EE 6
M Objektübergabe von Client zum Server Allgemeines EE 11
R EJB Client: Probleme mit der Client.jar Allgemeines EE 2
M "Auto Client-Request" oder Server-Push oder Ajax – Allgemeines EE 2
B Client starten ohne Eclipse Allgemeines EE 4
B Client ausführen mit JBoss v4.2 Allgemeines EE 3
G AnfängerFrage: EJB 3 und Enterprise Client Allgemeines EE 4
M probleme mit client server kommunikation Allgemeines EE 3
K Tomcat als Client nutzen Allgemeines EE 2
K Mail Client Allgemeines EE 2
M PDF im neuen Browserfenster auf Client-Rechner anzeigen Allgemeines EE 5
F Wie heisst das , was der Client als anfrage sendet? Allgemeines EE 3
N Wie heisst das was der Client beim Http Server anfragt? Allgemeines EE 6
G WebService Client: Parameterübergabe Allgemeines EE 9
N Tomcat -> Binary aus DB lesen und an Browser/Client sende Allgemeines EE 9
J Axis Client - Welcher JARs mitliefern? Allgemeines EE 5
B Java-Client für eBaySOAP-API liefert HTTP(400) Bad Request Allgemeines EE 2
L Web-Client - SessionBean - WebService Allgemeines EE 2
A problem mit client Allgemeines EE 3
M EJB-client: jar-Archiv als Export aus Eclipse läuft nicht Allgemeines EE 5
M Entity Beans: Rückgabe von Collectionen an Client Allgemeines EE 2
thor_norsk Glassfish Server unter Windows startet nicht! Allgemeines EE 20
F Webanwendung startet nicht richtig Allgemeines EE 6
A Tomcat startet nicht, Einstellungsfehler? Allgemeines EE 3
K Download Dialog startet nicht Allgemeines EE 2
S JBoss startet nicht Allgemeines EE 8
R Wie viel DevOps sollte ein Java-Entwickler kennen, der sich in Microservices spezialisiert? Allgemeines EE 5
eSK Entwicklungstechniken/Frameworks (viel Text) Allgemeines EE 21

Ähnliche Java Themen

Neue Themen


Oben