Classloader problems resolved - our application already has log4j-1.2.8.jar in 
the classpath, then I copied all of the XFire libs to Weblogics APP-INF/lib 
folder, which included log4j-1.2.6.jar.  Removing the jar from APP-INF/lib got 
solved the problem.  Apparently that caused some type of class loading issue. 


From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: Thu, 2 Aug 2007 13:20:44 
+0000Subject: RE: [xfire-user] Suggestions on resolving ClassClassException in 
Weblogic due to ClassLoader issu


Thanks, I think I have gotten past the ClassCastException by moving all of the 
code and jars out of  my war so that it should be picked up by the 
'application' classloader, with the exception of the qname.jar fix for 
weblogic.  The weblogic.xml suggestion didn't seem to work but putting the jar 
at the front of the classpath in the start .cmd file worked.   The only way 
weblogic seems to be able to find my XFIRE jars is by putting them in the 
applications\APP_INF\lib folder.  I have tried putting them in the WEB-INF/lib 
folder of the WAR file and in the applications folder for weblogic (application 
level, I think). Now I still seem to have a classloader issue but can't really 
tell what it is.  I get a ServletException that I can't seem to catch.  I 
wrapped my XFire initialization in try/catch (Throwable) but the 
ServletException seems to skip past me.  As best I can tell from the debugging 
I have done thru XFire, the code is in the middle of setting up the default 
binding mapping types for Aegis.  When the code attempts to 'register' the 
XMLStreamType, it fails somewhere there - the debugger is getting the logger 
and next thing I know, I am outside my servlet with a ServletException! So 
either this is some type of classloader issue with Log4j or something to do 
with the XMLStreamType.


Date: Thu, 2 Aug 2007 10:45:53 +0200From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: 
RE: [xfire-user] Suggestions on resolving ClassClassException in Weblogic due 
to ClassLoader issu







I do the same.
 
The principle is to set the service class to your EJB remote interface
 
After it’s practically the same as an EJB client.
-          Get the home interface
-          Instanciate your remote interface by the home create method
-          Call your services by using: method.invoke(InterfaceObject, params);
 
 
 




From: Mike Miller [mailto:[EMAIL PROTECTED] Sent: 01 August 2007 19:32To: 
[EMAIL PROTECTED]: RE: [xfire-user] Suggestions on resolving 
ClassClassException in Weblogic due to ClassLoader issu
 
Thanks, I was just in the middle of reading the first link, and already setup 
Weblogic with the weblogic.xml as stated.   We are on Weblogic 8.1.3. 
Apparently it has something to do with how I get access to the service.  Did 
you use the EJBInvoker?   I used the copy of the documentation and changed it 
slightly.  Rather than the EJBInvoker taking a EJBHome object, I pass it the 
service class and then use our ServiceLoader class to load the service and get 
the EJBHome from there.   Thanks for the input! /*** XFire EJB Invoker - lifted 
directly from the XFire documentation and then* slightly modified. Getting the 
EJBHome from our service.* * @param class class name of the ejb to be 
exposed*/public EJBInvoker(String clazz){try{//EJBObject svc = (EJBObject) 
Services.get(Class.forName(clazz));EJBObject svc = (EJBObject) 
ServiceLoader.getService(Class.forName(clazz));this.home = svc.getEJBHome();if 
(!home.getEJBMetaData().isSession() || 
!home.getEJBMetaData().isStatelessSession()){throw new 
IllegalArgumentException("home must be for a stateless session 
bean");}createMethod = home.getClass().getMethod("create", new Class[0]);}catch 
(Exception ex){throw new IllegalArgumentException("Unable to initialize 
invoker: " + ex);}
}  



Date: Wed, 1 Aug 2007 19:13:51 +0200From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: 
RE: [xfire-user] Suggestions on resolving ClassClassException in Weblogic due 
to ClassLoader issues

Try to see:
http://e-docs.bea.com/wls/docs81/programming/classloading.html
http://docs.codehaus.org/display/XFIRE/XFire+on+Weblogic+8.1
 
Do this and normally it deploys ws.
 
I did the same things : EJB exposed as WS on Weblo 8.1 SP5
 




From: Mike Miller [mailto:[EMAIL PROTECTED] Sent: 01 August 2007 18:02To: 
xfireSubject: [xfire-user] Suggestions on resolving ClassClassException in 
Weblogic due to ClassLoader issues
 
I am trying to expose one of our EJBs as a web service.  We have a 'startup' 
servlet that initializes our service locator component and then starts some our 
internal startup tasks.   I have added a new servlet that extends 
XFireConfigurableServlet and points to my services.xml.   The startup servlet 
is started first and the new servlet is the last servlet started. I get a 
ClassCastException within Weblogic when XFire attempts to initialize my 
EJBInvoker.  I believe this is class loader related but that is about as 
intelligently as I can speak of the problem.   Should there be a problem 
loading the service from the second servlet? I am on a very tight schedule and 
need to find a solution fairly quickly.  Any suggestion would be appreciated!



Local listings, incredible imagery, and driving directions - all in one place! 
Find it!
This email was sent to you by Reuters, the global news and information 
company.To find out more about Reuters visit www.about.reuters.com Any views 
expressed in this message are those of the individual sender, except where the 
sender specifically states them to be the views of Reuters Limited. Reuters 
Limited is part of the Reuters Group of companies, of which Reuters Group PLC 
is the ultimate parent company. Reuters Group PLC - Registered office address: 
The Reuters Building, South Colonnade, Canary Wharf, London E14 5EP, United 
KingdomRegistered No: 3296375Registered in England and Wales 
 



PC Magazine’s 2007 editors’ choice for best web mail—award-winning Windows Live 
Hotmail. Check it out!This email was sent to you by Reuters, the global news 
and information company.To find out more about Reuters visit 
www.about.reuters.com Any views expressed in this message are those of the 
individual sender, except where the sender specifically states them to be the 
views of Reuters Limited. 
Reuters Limited is part of the Reuters Group of companies, of which Reuters 
Group PLC is the ultimate parent company. Reuters Group PLC - Registered office 
address: The Reuters Building, South Colonnade, Canary Wharf, London E14 5EP, 
United KingdomRegistered No: 3296375Registered in England and Wales 

See what you’re getting into…before you go there. Check it out! 
_________________________________________________________________
Learn. Laugh. Share. Reallivemoms is right place!
http://www.reallivemoms.com?ocid=TXT_TAGHM&loc=us

Reply via email to