[EJB/JBoss] - Re: NoClassDefFoundError with Proxy classes on AIX
by zurchman
"scott.stark(a)jboss.org" wrote : I don't see this issue using the ibm jdks on linux for example.
|
Au contraire:
| 2006-11-21 16:17:46,519 INFO [STDOUT] (http-0.0.0.0-8080-Processor25:) javax.ejb.EJBException: Unexpected Error
| java.lang.NoClassDefFoundError: $Proxy105
|
It's not the fact that it's an IBM Linux JDK: it's the fact that it's an IBM Linux PPC JDK.
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build pxp32dev-20061002a (SR3) )
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux ppc-32 j9vmxp3223-20061001 (JIT enabled)
J9VM - 20060915_08260_bHdSMR
JIT - 20060908_1811_r8
GC - 20060906_AA)
JCL - 20061002
Personally, I'm fed up with IBM's "quirky" JDKs.
JDKs from from Sun are pretty much bullet proof. If it's an Apple JDK, you can pretty much work with it.
But if the JDK is from IBM, how it works - if it works - is a mystery.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3987725#3987725
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3987725
19Â years, 5Â months
[EJB/JBoss] - Re: Singleton EJB
by fishervï¼ teoco.com
Are the objects in the "single set accessed by all clients" ever persisted? If so, the DB itself should be your single set accessed by all clients. Then you can allow any number of EJB instances from a pool to access the same DB table(s) at the same time. For reading, you don't care how many readers there are. If multiple writers are creating new objects, that's ok - different ids will be assigned to each by your id generation strategy. If multiple writers are attempting to update the same object at the same time, you need to use optimistic locking (by a timestamp or version attribute) or pessimistic locking (rarely used) to prevent losing changes.
Forcing all activity to go through a single EJB is not scalable performance-wise and may also may cause memory issues if the set grows too large.
Good luck!
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3987723#3987723
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3987723
19Â years, 5Â months
[JBossWS] - Error With WSDL Generation For JSR-181 EJB Endpoint With Hea
by mjrother
I am try to add headers to existing web services curently deployed as a stateless session EJB with JSR-181. The WSDL generated names the body part of the message is "parameters" instead of the supplied name. This results in a invalid WSDL that must be hand edited for it to work.
| @WebService(name = "test", targetNamespace = "http://com.test", serviceName = "test")
| @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, use = SOAPBinding.Use.LITERAL, parameterStyle = SOAPBinding.ParameterStyle.BARE)
| @Stateless
| public class SecureService {
|
| @WebMethod
| public void logout(@WebParam(name="logoutRequest") LogoutRequest request, @WebParam(name="SecHeader", header=true) String headerValue ){
| }
|
| @WebMethod
| public void logout2(@WebParam(name="SecHeader2", header=true) String headerValue, @WebParam(name="test") String request){
| }
| }
|
The resulting WSDL is :
| <definitions name="test" targetNamespace="http://com.test" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://com.test" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
| <types>
| <schema elementFormDefault="qualified" targetNamespace="http://com.test" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://com.test" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| <complexType name="LogoutRequest">
| <sequence>
| <element name="customerId" nillable="true" type="string"/>
| </sequence>
| </complexType>
| <element name="SecHeader" type="string"/>
| <element name="SecHeader2" type="string"/>
| <element name="logoutRequest" type="tns:LogoutRequest"/>
| <element name="test" type="string"/>
| </schema>
| </types>
| <message name="test_logout2">
| <part element="tns:SecHeader2" name="SecHeader2"/>
| <part element="tns:test" name="parameters"/>
| </message>
| <message name="test_logout2Response"/>
| <message name="test_logoutResponse"/>
| <message name="test_logout">
| <part element="tns:logoutRequest" name="parameters"/>
| <part element="tns:SecHeader" name="SecHeader"/>
| </message>
| <portType name="test">
| <operation name="logout">
| <input message="tns:test_logout"/>
| <output message="tns:test_logoutResponse"/>
| </operation>
| <operation name="logout2">
| <input message="tns:test_logout2"/>
| <output message="tns:test_logout2Response"/>
| </operation>
| </portType>
| <binding name="testBinding" type="tns:test">
| <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
| <operation name="logout">
| <soap:operation soapAction=""/>
| <input>
| <soap:header message="tns:test_logout" part="SecHeader" use="literal"/>
| <soap:body parts="logoutRequest" use="literal"/>
| </input>
| <output>
| <soap:body use="literal"/>
| </output>
| </operation>
| <operation name="logout2">
| <soap:operation soapAction=""/>
| <input>
| <soap:header message="tns:test_logout2" part="SecHeader2" use="literal"/>
| <soap:body parts="test" use="literal"/>
| </input>
| <output>
| <soap:body use="literal"/>
| </output>
| </operation>
| </binding>
| <service name="test">
| <port binding="tns:testBinding" name="testPort">
| <soap:address location="http://QUANDARY:8080/ipm-ejb/SecureService"/>
| </port>
| </service>
| </definitions>
|
The problem is in the message definition where the name of "parameters" is used. If I hand edit the WSDL to the following it works as planned:
| <definitions name="test" targetNamespace="http://com.test" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://com.test" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
| <types>
| <schema elementFormDefault="qualified" targetNamespace="http://com.test" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://com.test" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| <complexType name="LogoutRequest">
| <sequence>
| <element name="customerId" nillable="true" type="string"/>
| </sequence>
| </complexType>
| <element name="SecHeader" type="string"/>
| <element name="SecHeader2" type="string"/>
| <element name="logoutRequest" type="tns:LogoutRequest"/>
| <element name="test" type="string"/>
| </schema>
| </types>
| <message name="test_logout2">
| <part element="tns:SecHeader2" name="SecHeader2"/>
| <part element="tns:test" name="test"/>
| </message>
| <message name="test_logout2Response"/>
| <message name="test_logoutResponse"/>
| <message name="test_logout">
| <part element="tns:logoutRequest" name="logoutRequest"/>
| <part element="tns:SecHeader" name="SecHeader"/>
| </message>
| <portType name="test">
| <operation name="logout">
| <input message="tns:test_logout"/>
| <output message="tns:test_logoutResponse"/>
| </operation>
| <operation name="logout2">
| <input message="tns:test_logout2"/>
| <output message="tns:test_logout2Response"/>
| </operation>
| </portType>
| <binding name="testBinding" type="tns:test">
| <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
| <operation name="logout">
| <soap:operation soapAction=""/>
| <input>
| <soap:header message="tns:test_logout" part="SecHeader" use="literal"/>
| <soap:body parts="logoutRequest" use="literal"/>
| </input>
| <output>
| <soap:body use="literal"/>
| </output>
| </operation>
| <operation name="logout2">
| <soap:operation soapAction=""/>
| <input>
| <soap:header message="tns:test_logout2" part="SecHeader2" use="literal"/>
| <soap:body parts="test" use="literal"/>
| </input>
| <output>
| <soap:body use="literal"/>
| </output>
| </operation>
| </binding>
| <service name="test">
| <port binding="tns:testBinding" name="testPort">
| <soap:address location="http://QUANDARY:8080/ipm-ejb/SecureService"/>
| </port>
| </service>
| </definitions>
|
Am I doing something wrong or is there a work around?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3987722#3987722
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3987722
19Â years, 5Â months