Win a copy of Beginning Java 17 Fundamentals: Object-Oriented Programming in Java 17 this week in the Java in General forum!

kishore routhu

Greenhorn
+ Follow
since Jan 17, 2013
Cows and Likes
Cows
Total received
0
In last 30 days
0
Total given
0
Likes
Total received
0
Received in last 30 days
0
Total given
0
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by kishore routhu

Dear Maneesh

Thank You for quick replay.
As you asked here the memory options.

-XX:MaxPermSize=256m
-Xms40m
-Xmx512m

Thank You

Regards,
Kishore
Hi Good Morning All

I am using Eclipse as development IDE for our java project. Unfortunately the IDE is crashes means it closing frequently after working sometime on it. I goggled to find the root cause and find the some sort of solutions but those were not worth to resolve it.
So anybody please help me to resolve this as early as possible.

Following the platform specifications i am using for development environment.

Eclipse
Version : Indigo Service Release 1
Build id: 20110916-0149
Ubuntu
Distributor ID: Ubuntu
Description: Ubuntu Trusty Tahr (development branch)
Release: 14.04
Codename: trusty

Java
jdk1.7.0_13
Jboss
JbossAs 7.1.1

Thank You In Advance

Regards,
KISHORE
Dear Friends,

We are working Enterprise application that involves the storing of XML logs to Secondary Storage as part each request processing. But it consuming more CPU time when writing logs to Secondary Storage. Thus effecting the entire application performance.

I tried to improve this with following know methods.
1. Using ZIPInputStream to write bytes to ZIP file , It is good in accordance to less file Size but it consumes more time than writing bytes to plain text file.

2.Using GZIPInputStream to write compressed bytes of data to GZIP file relatively this is also as far as performance is concerned.

So any body please suggest me the best way for achieving best performance with I/O and less in file size ?

Thank You.
Dear Friends,

We are working Enterprise application that involves the storing of XML logs to Secondary Storage as part each request processing. But it consuming more CPU time when writing logs to Secondary Storage. Thus effecting the entire application performance.

I tried to improve this with following know methods.
1. Using ZIPInputStream to write bytes to ZIP file , It is good in accordance to less file Size but it consumes more time than writing bytes to plain text file.

2.Using GZIPInputStream to write compressed bytes of data to GZIP file relatively this is also as far as performance is concerned.

So any body please suggest me the best way for achieving best performance with I/O and less in file size ?

Thank You.
8 years ago
Thank you Mike Fourier

Because i am working with the same in Jboss AS 7. But i can't see the operation listInUseConnections
on jmx-console to invoke the opertion to the stack of each connection.
Can you please suggest me how to enable listInUseConnections operation for jmx-console in Jboss AS7 ?

Thank you in advance
8 years ago
Actually we are migrating from Jboss-4.2.2GA to Jboss As7 it is good to work
with Jboss As7 but the problem is that in Jboss-4.2.2GA the SSL is enabled
and working fine for HTTPS with port 8443 for given following configuration (1)
in Server.xml.



1. SSL Configuration for Https Secure port in Jboss-4.2.2 GA
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="250" scheme="https" secure="true"
clientAuth="false"
strategy="ms"
address="${jboss.bind.address}"
keystoreFile="${jboss.server.home.dir}/conf/ssl/2013-cert/working/server.keystore"
keystorePass="123456"
keystoreType="pkcs12"
sslProtocol="TLS"
SSLHonorCipherOrder="On"
ciphers="SSL_RSA_WITH_RC4_128_MD5,SSL_RSA_WITH_RC4_128_SHA"
/>




Where as in Jboss AS7 with given following configuration (2) in Standalone.xml when
start up jboss it throws the following error observed in server.log


2. SSL Configuration for Https Secure port in Jboss As7
<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host">
<connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" redirect-port="8443" secure="true" max-connections="400">
<ssl name="ssl" password="123456"
certificate-key-file="/www/jboss7/standalone/configuration/ssl/ssl.domainname.crt"
cipher-suite="SSL_RSA_WITH_RC4_128_MD5,SSL_RSA_WITH_RC4_128_SHA" protocol="TLSv1" verify-client="false"
verify-depth="10"
keystore-type="PKCS12"
truststore-type="PKCS12"/>
</connector>
<virtual-server name="default-host" enable-welcome-root="true">
<alias name="localhost"/>
<alias name="vela"/>
</virtual-server>
</subsystem>


and tried with following alternative configuration in Jboss AS7


<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host">
<configuration>
<static-resources sendfile="524288"/>
</configuration>
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http" enable-lookups="true" redirect-port="8443" executor="http-executor" max-connections="50"/>
<connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" redirect-port="8443" secure="true" max-connections="400">
<ssl name="ssl" password="123456"
certificate-key-file="/www/jboss7/standalone/configuration/ssl/2013-cert/working/server.keystore"
cipher-suite="SSL_RSA_WITH_RC4_128_MD5,SSL_RSA_WITH_RC4_128_SHA" protocol="TLSv1" verify-client="false"
verify-depth="10" keystore-type="PKCS12" truststore-type="PKCS12"/>
</connector>
<virtual-server name="default-host" enable-welcome-root="true">
<alias name="localhost"/>
</virtual-server>
</subsystem>


RROR [org.apache.coyote.http11.Http11AprProtocol] (MSC service thread 1-2) Error initializing endpoint: java.lang.Exception: Unable to configure permitted SSL ciphers (error:1410D0B9:SSL routines:SSL_CTX_set_cipher_list:no cipher match)
at org.apache.tomcat.jni.SSLContext.setCipherSuite(Native Method) [jbossweb-7.0.13.Final.jar:]
at org.apache.tomcat.util.net.AprEndpoint.init(AprEndpoint.java:642) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11AprProtocol.init(Http11AprProtocol.java:121) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.connector.Connector.init(Connector.java:983) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:267) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_13]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_13]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_13]


07:00:50,361 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC00001: Failed to start service jboss.web.connector.https: org.jboss.msc.service.StartException in service jboss.web.connector.https: JBAS018007: Error starting web connector
at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:271)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_13]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_13]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_13]
Caused by: LifecycleException: Protocol handler initialization failed: java.lang.Exception: Unable to configure permitted SSL ciphers (error:1410D0B9:SSL routines:SSL_CTX_set_cipher_list:no cipher match)
at org.apache.catalina.connector.Connector.init(Connector.java:985)
at org.jboss.as.web.WebConnectorService.start(WebConnectorService.java:267)
... 5 more


**** And also migrating from jdk1.6.0_38 to jdk1.7.0_13


Following is KeyStore information
====================================
> keytool -v -list -storetype PKCS12 -keystore server.keystore
Enter keystore password:


Keystore type: PKCS12
Keystore provider: SunJSSE


Your keystore contains 1 entry


Alias name: 1
Creation date: Jun 5, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:


Do i need any changes in configuration of Jboss AS7 to Successfully enable SSL in as compared to Jboss 4.2.2GA ?

what "keystoreFile" element in Jboss 4.2.2GA configuration represents and
what "certificate-key-file" element in Jboss AS7 configuration represents
These two represents same (i.e keystore) or different ?

What is value of "certificate-key-file" whether it is certificate.crt OR certificate.csr OR server.keystore ?

Please suggest me for the above so that can move futher.


Thanks in advance
8 years ago
Dear Peter Johnson Thank for your quick reply with valuable suggestions

So you are saying that 90% of the response time observed by the client is transmitting the XML results from the server to the client. Is that correct?

A : Yes, it is correct 90% of the response time is only to commit response to client through socket outputstream

Example :
1. byte[] rsBytes = resXML.getBytes();
2.response.setContentType("text/xml");
3.int contentLength = otaRSBytes.length;
4.response.setContentLength(contentLength);
5.response.setCharacterEncoding("UTF-8");
6.out = response.getOutputStream();
7.out.write(rsBytes);
8.out.flush();
9.out.close();
90% response time takes from line 2 to line 7 .

Are you using the HTTP port or the HTTPS port?
A : I am using HTTP port 8080.

If you have tried both, do you still get the same results?
A : I didn't tried with HTTPS.

What is the size of your response message?
A: Size of response varies it can 200KB, 500KB , 1MB, 2MB,3MB,4MB
but the response message with higher sizes takes max time to send response.

How are you measuring the response time that the client is seeing? If via a timer in the client app, could it be that some of the time is being spent in the client? (I'd suggest monitoring the network adapter in this case to see how much time it really takes to do the actual network transfer)
A : I measure response time from server side by logging time stamps into database before and after writing response to client.

Can you please suggest me How to monitoring the network adapter for network transfer ?

8 years ago
I am working with EnterpriseApplication on Jboss AS 7 platform.
Functionality of application it that it takes XML data as request
and process it and sends XML data as response to client. Here
XML request (in kilobyts) is relatively less in size when compared to
XML response ( ranges fro KB to MB). I enabled some loggings of
request processing from this i conclude that 90% of request processing
(i.e 1.parsingXML + 2.executeBusinessLogic + 3.constructsXMLResponse +
4. SendXML response to client)
is to write back the XML response to client(i.e step 4 from the above).
And observed from live that Ram usage is always 50% - 70% and
CPU load is 0.16 - 1.0

But still i couldn't found that only write response back to client
takes 90% of response time.

following is Web configuration in Standalone.xml of Jboss As 7 and target client
has same configuration which receives the response.
<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host">
<configuration>
<static-resources sendfile="524288"/>
</configuration>
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http" enable-lookups="true" redirect-port="8443" executor="http-executor" max-connections="50"/>
<connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" redirect-port="8443" secure="true" max-connections="400">
<ssl name="ssl" key-alias="chapter8" password="123456" certificate-key-file="../standalone/configuration/cultswitch.cultuzz.de.keystore" cipher-suite="SSL_RSA_WITH_RC4_128_MD5,SSL_RSA_WITH_RC4_128_SHA" protocol="TLSv1" verify-client="false" verify-depth="10" keystore-type="PKCS12" truststore-type="PKCS12"/>
</connector>
<virtual-server name="default-host" enable-welcome-root="true">
<alias name="localhost"/>
<alias name="vela"/>
</virtual-server>
</subsystem>

Can anybody help with the way to find the reasons for this ?

For more information :
1. Using non-transactional datasource with following pool configuration
<pool>
<min-pool-size>20</min-pool-size>
<max-pool-size>50</max-pool-size>
<prefill>false</prefill>
<use-strict-min>false</use-strict-min>
<flush-strategy>FailingConnectionOnly</flush-strategy>
</pool>
2. Local EJB's with CONTAINER managed transactions.
3. Configured for recovery-environment for transactions recovery for every 2 minutes.
4. Threads subsystem configuration as follows
<subsystem xmlns="urn:jboss:domain:threads:1.1">
<bounded-queue-thread-pool name="http-executor">
<core-threads count="50"/>
<queue-length count="50"/>
<max-threads count="50"/>
<keepalive-time time="10" unit="seconds"/>
</bounded-queue-thread-pool>
</subsystem>

Hardware Specification : 8GB RAM

Processor Information (2 processors):

vendor_id : GenuineIntel
cpu family : 6
model : 44
model name : Intel(R) Xeon(R) CPU E5645 @ 2.40GHz
stepping : 2
cpu MHz : 2400.085
cache size : 12288 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
apicid : 1
initial apicid : 1
fpu : yes
fpu_exception : yes
cpuid level : 11
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perf
mon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt aes hypervisor lahf_lm arat epb dts
bogomips : 4800.17
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual


Softwares Specification:
ApplicationType : EnterpriseApplication
Java : 7.1
Application Server : Jboss AS 7
DataBase : MySQL
EJB : 3.0
Hibenate : 4.0.1

Do i need any changes in Standalone configuration ?
Do i need any changes in I/O of OpertingSystem ?
8 years ago
Yes i tried with getRealPath("/MyServlet") but it returns as follows

/usr/java/jboss/jboss-as-7.1.1.Final/standalone/tmp/vfs/temp8e6f1bb35e6dff50/TestApp.war-bdc0e65482008d47/MyServlet
I am working with Socket (acting as clientSocket) in my Web-Application and this socket is connected to
remote ServerSocket.
Following is the code snippet.

1. PrintWriter socketOutput = new PrintWriter(new OutputStreamWriter(clientSocket.getOutputStream()), true);
2. BufferedReader SocketInput = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
3. String testFile = "TestFile.xml";
4. File file = new File(testFile);
5. FileReader fr = new FileReader(testFile);
6. BufferedReader br = new BufferedReader(fr);
7. String content = br.readLine();
8. while (content != null) {
10. socketOutput.println(content);
11. content = br.readLine();
12. socketOutput.flush(); // flushing data to Server Socket
13. }
14. socketOutput.close(); //closing SocketOutputStream

Here the clientSocket is flushing each line of data(line:12) to Server Socket
but the serverSocket is not receving it.
And server socket is receiving all the data from file(instead of each line) when
SocketOutputStream is closed from client(line:14).
Please suggest me that how to flush each and every line to ServerSocket(line:12) from
above code.
I am working with Web-Application (TestApp). In this application i used to implement the ServletContextListener(as ContextListener) and
contextInitialized(ServletContextEvent event) method contains the following code segment.

ServletContext servletContext = event.getServletContext();
// where event is ervletContextEventURL
String servletPath = servletContext.getContextPath()+"/MyServlet";
// MyServlet is URL of the Servlet
URL servletURL = sevletContext.getResource();

Here i am trying to get the complete URL of MyServlet ( expected servletURL = http://localhost:8080/TestApp/MyServlet) but it always returns '0'.
And servletContext.getContextPath() always returns /TestApp (expected http://localhost:8080/TestApp).

Anybody please suggest me that is there any way to find URL of context(http://localhost:8080/TestApp)
OR particular Servlet from ServletContext(http://localhost:8080/TestApp/MyServlet).

Using ApplicationServer : Jboss AS 7.1.1
I am getting the following exception while parsing the xml using JAXB.


javax.xml.bind.UnmarshalException: unexpected element (uri:"http://www.opentravel.org/OTA/2003/05", local:"OTA_HotelRateAmountNotifRS"). Expected elements are (none)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.handleEvent(UnmarshallingContext.java:603)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportError(Loader.java:244)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportError(Loader.java:239)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.Loader.reportUnexpectedChildElement(Loader.java:116)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext$DefaultRootLoader.childElement(UnmarshallingContext.java:1009)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement(UnmarshallingContext.java:446)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement(UnmarshallingContext.java:427)
10:16:17,533 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:137)
10:16:17,533 ERROR [STDERR] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
10:16:17,534 ERROR [STDERR] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)

and my XSD for OTA_HotelRateAmountNotifRS

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.opentravel.org/OTA/2003/05" elementFormDefault="qualified" version="1.005" id="OTA2006A" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="OTA_HotelRateAmountNotifRS">
<xs:annotation>
<xs:documentation xml:lang="en">The OTA_HotelInvCountNotifRS is the message used to indicate the status of processing the OTA_HotelInvCountNotifRQ message.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="MessageAcknowledgementType">
<xs:sequence>
<xs:element name="Inventories" type="InvCountType" minOccurs="0"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:schema>

"MessageAcknowledgementType" is defined as follows

<xs:complexType name="MessageAcknowledgementType">
<xs:sequence>
<xs:choice>
<xs:sequence>
<xs:element name="Success" type="SuccessType">
<xs:annotation>
<xs:documentation xml:lang="en">The presence of the empty Success element explicitly indicates that the OTA versioned message succeeded. </xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Warnings" type="WarningsType" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="en">Used in conjunction with the Success element to define one or more business errors.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:element name="Errors" type="ErrorsType">
<xs:annotation>
<xs:documentation xml:lang="en">Errors is returned if the request was unable to be processed.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element name="UniqueID" type="UniqueID_Type" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="en">May be used to return the unique id from the request message.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="TPA_Extensions" minOccurs="0"/>
</xs:sequence>
<xs:attributeGroup ref="OTA_PayloadStdAttributes"/>
</xs:complexType>

attributeGroup "OTA_PayloadStdAttributes" contains the following attributes
1.EchoToken
2.TimeStamp
3.Target
4.Version
5.TransactionIdentifier
6.SequenceNmbr
7.TransactionStatusCode



Anyone please advice me what are the changes i need to do in XSD for successful parsing of XML ?
I am using JAXB for working with xml's (Unmarshalling and Marshalling)

xml source is as follows
<?xml version="1.0" encoding="UTF-8"?>
<OTA_HotelRatePlanNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" TimeStamp="2013-01-18T15:58:22.686N" Version="1">
<POS>
<Source AgentSine="159" AgentDutyCode="7ecb927d90b2c39">
<RequestorID URL="http://24.134.53.26/V8/FidelioIISWrapper.dll/FidelioXMLInter" Type="Cultuzz" ID="38193"/>
</Source>
</POS>
<RatePlans>
<RatePlan RatePlanCode="CUL3" RatePlanType="13" RatePlanCategory="RAC" Start="2013-01-18" End="2016-10-12" CurrencyCode="EUR">
<BookingRules>
<BookingRule MinAdvancedBookingOffset="0">
<LengthsOfStay>
<LengthOfStay Time="0" TimeUnit="Day" MinMaxMessageType="SetMinLOS"/>
<LengthOfStay Time="0" TimeUnit="Day" MinMaxMessageType="SetMaxLOS"/>
</LengthsOfStay>
</BookingRule>
</BookingRules>
<Rates>
<Rate Start="2013-01-18" End="2013-12-31" Mon="1" Tue="1" Weds="1" Thur="1" Fri="1" Sat="0" Sun="0" CurrencyCode="EUR" InvTypeCode="78785" UnitMultiplier="1">
<AdditionalGuestAmounts>
<AdditionalGuestAmount AgeQualifyingCode="10" Amount="111"/>
</AdditionalGuestAmounts>
<BaseByGuestAmts>
<BaseByGuestAmt NumberOfGuests="1" AgeQualifyingCode="TEE" AmountAfterTax="11"/>
<BaseByGuestAmt NumberOfGuests="1" AgeQualifyingCode="CHI" AmountAfterTax="22"/>
<BaseByGuestAmt NumberOfGuests="1" AgeQualifyingCode="BAB" AmountAfterTax="33"/>
</BaseByGuestAmts>
</Rate>
<Rate Start="2013-01-18" End="2013-12-31" Mon="0" Tue="0" Weds="0" Thur="0" Fri="0" Sat="1" Sun="1" CurrencyCode="EUR" InvTypeCode="78785" UnitMultiplier="1">
<AdditionalGuestAmounts>
<AdditionalGuestAmount AgeQualifyingCode="10" Amount="111"/>
</AdditionalGuestAmounts>
<BaseByGuestAmts>
<BaseByGuestAmt NumberOfGuests="1" AgeQualifyingCode="TEE" AmountAfterTax="11"/>
<BaseByGuestAmt NumberOfGuests="1" AgeQualifyingCode="CHI" AmountAfterTax="22"/>
<BaseByGuestAmt NumberOfGuests="1" AgeQualifyingCode="BAB" AmountAfterTax="33"/>
</BaseByGuestAmts>
</Rate>
</Rates>
</RatePlan>
</RatePlans>
</OTA_HotelRatePlanNotifRQ>



While unmarshalling i am getting the following Error :

java.lang.IllegalArgumentException: 0
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.jaxp.datatype.DurationImpl.<init>(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.jaxp.datatype.DatatypeFactoryImpl.newDuration(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$25.parse(RuntimeBuiltinLeafInfoImpl.java:782)
2013-01-21 16:55:40,348 ERROR [STDERR] at com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$25.parse(RuntimeBuiltinLeafInfoImpl.java:780)
2013-01-21 16:55:40,348 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.reflect.TransducedAccessor$CompositeTransducedAccessorImpl.parse(TransducedAccessor.java:241)
2013-01-21 16:55:40,348 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.StructureLoader.startElement(StructureLoader.java:202)
2013-01-21 16:55:40,348 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext._startElement(UnmarshallingContext.java:449)
2013-01-21 16:55:40,348 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.startElement(UnmarshallingContext.java:427)
2013-01-21 16:55:40,348 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.SAXConnector.startElement(SAXConnector.java:137)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
2013-01-21 16:55:40,348 ERROR [STDERR] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
2013-01-21 16:55:40,349 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:211)
2013-01-21 16:55:40,349 ERROR [STDERR] at com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:184)
2013-01-21 16:55:40,349 ERROR [STDERR] at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:137)
2013-01-21 16:55:40,349 ERROR [STDERR] at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:184)
2013-01-21 16:55:40,349 ERROR [STDERR] at de.cultuzz.adapter.servlets.Suite8ControllerServlet.processRequest(Suite8ControllerServlet.java:142)
2013-01-21 16:55:40,349 ERROR [STDERR] at de.cultuzz.adapter.servlets.Suite8ControllerServlet.doPost(Suite8ControllerServlet.java:91)
2013-01-21 16:55:40,349 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
2013-01-21 16:55:40,349 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
2013-01-21 16:55:40,349 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
2013-01-21 16:55:40,350 ERROR [STDERR] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
2013-01-21 16:55:40,350 ERROR [STDERR] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
2013-01-21 16:55:40,350 ERROR [STDERR] at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44




Please explain me that what wrong with xml ?
What is the root cause for IllegalArgumentException ?
How to resolve this problem ?
9 years ago
We are working for a project which is developed using Servlets,
Stateless EJB and Hibernate. Basic HTTPServlet will receive request
data from client and it delegates processing job to respective
stateless EJB. The request message is an XML string(some times size >
5 KB). DAO layer using Hibernate will take care of accessing database.
There are some handler, utility classes which have calls from EJBs.
According to our business logic, No need of maintaining transactions
and security at EJB layer. Application is running in Jboss App server.
We are using mysql data source manged by Jboss and accessing from
Hibernate DAO layer

My Question is: In this case, Should I use Stateless EJB or Shall I go
with normal java interfaces ?
What is the necessity of EJB layer here ?