Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Issue is De-serializing nested date type using Axiss 1.4

1064905Jan 16 2014

We are using Axis 1.4 and face issue during deserialization in handling date types. The scenario is explained below. I couldn’t find enough information on net on below and hence asking question to the apache team. Please note when we switch to Axis 2, issue is not seen. Upgrading may not be a simple option for us as of now, and hence I was evaluating possible workarounds or solution if any.

  1. The XSD contains type “DateofBirthType” which is of type xsd:date
  2. Child XSDs contains element “DateofBirth” of type “DateOfBirthType”
  3. When Java client invokes the web service, IllegalArgumentException is seen while de-serializing this “DateOfBirthType” element. If we remove “DateOfBirthType” and map it directly to xsd:date type all works fine.

We have generated the stub using Axis 1.4 and trying to access the RetrieveIndividualCustInformation  operation through stub, but getting the (IllegalArgumentException) while axis tries to deserialize the response for all the fields having data types as date which is indirectly mapped (nested mapping) as shown below.

  1. e.g. IndividualInfo-----DateOfBirth(Type—DateOfbirth ---Which is of Type Date)-_you will face illegal argument exception.

So, when we changed the type to simple date (not nested),then it worked fine. So it confirms that this problem is only for type date which is clearly seen in Axis 1.4 client.

Please let me know if anyone faces similar/same issue or even know any such issue already persists and there are no possible workarounds and/or fixes for this. In that case we can put up case to migrate to Axis2.

Please reply ASAP.

Comments

Sdhamoth-Oracle

You have missed to prefix the path './'.

You need to execute it as:

sudo ./odbc_update.ini.sh /usr/local

What is the error message displayed by isql?

Have you checked whether the TNS setting using SQL*Plus? Were you able to connect to database using SQL*Plus?

Camilo E. Zamorano

Ok, so i executed:

sudo ./odbc_update.ini.sh /usr/local

And i got the same message:

*** ODBCINI environment variable not set,defaulting it to HOME directory!

Can you tell what does that mean?

When i try:

isql OracleODBC-12c user pwd

i get [ISQL]ERROR: Could not SQLConnect

I did sudo nano ~./odbc.ini and changed the following parts:

ServerName=

to

ServerName=localhost/myservicename

i'm trying to connect to a local server using ethernet connection on a lan.

UserID=

to UserID=myuserid

Thanks so much for you help!

Sdhamoth-Oracle

> *** ODBCINI environment variable not set,defaulting it to HOME directory!

It says that the .odbc.ini is created in the default path (i.e. $HOME directory).

> ServerName=localhost/myservicename

If the DB server is not running in the default port 1521, you need to specify the port number too. Best way to troubleshoot this scenario is by using SQL*Plus  to cross the connectivity with the TNS information provided in 'ServerName' attribute in ~/.odbc.ini file.

Camilo E. Zamorano

I tried

isql -v localhost:1521/TNSName user pwd

and i got

[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified

I suppose it's an advance?

3758246

Hey, I'm in the same error now, any update?

Sdhamoth-Oracle

We shouldn't be passing the Oracle ez connection string in unixODBC isql.utility.

Proper syntax for unixODBC isql is :

isql DSN [USER [PASSWORD]] [options]

1 - 6
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Feb 13 2014
Added on Jan 16 2014
0 comments
836 views