cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Getting Production ImpEx Exception as input string: "54.000" & For input string: "144.000"[HY--1]

Former Member
0 Kudos
1,344

Hi Expert ,

Can anyone help me to understand below Production issues.

Exception ocurred, will ignore: de.hybris.platform.impex.jalo.ImpExException: For input string: "54.000"[HY--1] INFO | jvm 1 | main | 2018/12/20 20:27:02.024 | m de.hybris.platform.impex.jalo.ImpExException: For input string: "54.000" ![alt text

Regards,

Accepted Solutions (1)

Accepted Solutions (1)

arvind-kumar_avinash
Active Contributor
0 Kudos

In addition to what has suggested, I would try to find 54.000 and 144.000 in all ImpEx files of production machine. A simple shell/terminal command like

 find . -name '*.impex' -exec grep "54.000\|144.000" {} \; -print

from hybris/bin should not take more than a minute to find the result.

Update based on your further explanation of the problem:
The problem is with the consignment entries which have a number with . value e.g. 8.000 or 40.000. You can easily find the root cause by debugging the class, com.shire.datahub.translator.DataHubOrderTranslator. If you are not able to figure out the problem, please post the code of the class.

Former Member
0 Kudos

Hi Arvind,

Thanks for your suggestion and providing above command .

But i have one more concern regarding using the above command .

How and Where i have to run above command as i'm not able to seen anything in HAC .

Please suggest .

arvind-kumar_avinash
Active Contributor
0 Kudos

Hi @Satish - If you are directly working on the production server, you need to run the command on Unix shell/terminal (assuming your production system is on Unix). If you have the credentials, you can use PuTTY from your windows machine to connect to your production server. If you are not authorized to access the production server, ask your infrastructure/network team who has access to the production server to run the command and pass on the result to you.

Former Member
0 Kudos

Hi Arvind,

Thanks for your valuable suggestion .

Regards,

Satish

Former Member
0 Kudos

Hi Arvind ,

Thanks for your update .

Yes , i'm looking based on your suggestion .

But i didn't find any method importValue(valueExpr,toItem). in the below class

com.shire.datahub.translator.DataHubOrderTranslator class

if possible try to look the code once and let me know if m doing wrong here ..

Please find attached code .

Regards, link text

arvind-kumar_avinash
Active Contributor
0 Kudos

Your link is not accessible.

Please put the code in a .txt file and attach it using the attach button in the editor.

Former Member
0 Kudos

Hi Arvind ,

I have uploaded file again , Please check .

If you are still not able to open attached file , then please share your any gmail account .

Regards,

arvind-kumar_avinash
Active Contributor
0 Kudos

It is clear from the code that it is the method, getInboundHelper().processConsignmentEntry(params) which is processing the params (e.g. TargetConsignmentEntry, 0010727938, 0060769864, 900002, 8.000, 000000000001503847, 8.000, and 000050 in case of third record). Please look into the code of the method, processConsignmentEntry(String[]) or send me the same if you still face any problem.

arvind-kumar_avinash
Active Contributor
0 Kudos

Hi @Satish - did it help to solve your problem?

Former Member
0 Kudos

Hi

Not yet , but looking the code

Please check the code from your end also .

I'm also looking the same but i didn't know exact functionality ,so taking time to understand .

Please find attached code with this .

Regards, link text

link text

Former Member
0 Kudos

Hi

I have checked the code with specify method but i didn't found anything which causes exception raised in logs

Please let me know if you found anything wrong with the code .

Thanks in advance ....

Regards,

arvind-kumar_avinash
Active Contributor
0 Kudos

Hi @Satish - I was out of station for the whole day, I came back a while ago and saw your message. I can clearly see that the following line will throw an exception when it will try to process the 3rd and the 4th records in the ImpEx i.e. the records with 8.000 and 40.000.

 final Long shippedQty = params[4] == null ? Long.valueOf(0) : Long.valueOf(params[4]);

This line of code is trying to evaluate Long.valueOf(8.000) in case of 3rd record and Long.valueOf(40.000) in case of 4th record which fails because it treats 8.000 and 40.000 as double or BigDecimal values and there is no function such as Long.valueOf(double) or Long.valueOf(BigDecimal). Ref: https://docs.oracle.com/javase/7/docs/api/java/lang/Long.html

You can also test it by executing the following line in groovy console of hAC:

 println Long.valueOf(8.000)

or writing the following line in any Java program:

 System.out.println(Long.valueOf(8.000));

I hope it is clear.

I don't think there is any other doubt left. Nevertheless, you can always contact me ( ) in case of any further issue with this question.

Former Member
0 Kudos

Hi ,

Thanks for your reply and all the suggestion provided by you .

Surely i will connect with you whenever required.

Regards,

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi All,

I have found below impex cronjob which was throwing error whenever delivery idocs coming from datahub :

INSERT_UPDATE Consignment;;@consignmentEntry[translator=com.shire.datahub.translator.DataHubOrderTranslator];code[unique=true] ;2037522;TargetConsignmentEntry###0010727943###0060769865###000010###10###000000001518200010###10###000010;0060769865 ;2037521;TargetConsignmentEntry###0010727938###0060769864###000010###40###000000000001503848###40###000040;0060769864 ;2037520;TargetConsignmentEntry###0010727938###0060769864###900002###8.000###000000000001503847###8.000###000050;0060769864 ;2037518;TargetConsignmentEntry###0010727938###0060769864###900001###40.000###000000000001503848###40.000###000040;0060769864 ;2037516;TargetConsignmentEntry###0010727938###0060769864###000020###8###000000000001503847###8###000050;0060769864

and getting below exception :

: ERROR: de.hybris.platform.impex.jalo.ImpExException: Can not resolve any more lines ... Aborting further passes (at pass 2). Finally could not import 2 lines![HY-123]24.12.2018 13:15:33: ERROR: Exception ocurred, will ignore: de.hybris.platform.impex.jalo.ImpExException: For input string: "40.000"[HY--1]24.12.2018 13:15:33: ERROR: Exception ocurred, will ignore: de.hybris.platform.impex.jalo.ImpExException: For input string: "8.000"[HY--1]24.12.2018 13:15:33: ERROR: Exception ocurred, will ignore: de.hybris.platform.impex.jalo.ImpExException: For input string: "40.000"[HY--1]24.12.2018 13:15:33: ERROR: Exception ocurred, will ignore: de.hybris.platform.impex.jalo.ImpExException: For input string: "8.000"[HY--1]

Please suggest me why its throwing exception if possible .

Thanks in advance .

Regards,

arvind-kumar_avinash
Active Contributor
0 Kudos

Based on this explanation, I have updated my answer.

Former Member
0 Kudos

Hi Arvind ,

Thanks for your update .

Yes , i'm looking based on your suggestion .

But i didn't find any method importValue(valueExpr,toItem). in the below class

com.shire.datahub.translator.DataHubOrderTranslator class

if possible try to look the code once and let me know if m doing wrong here ..

Please find attached code .

Regards, link text

former_member633554
Active Participant
0 Kudos

Check cronjobs which ran at that time and you should be able to find the impex that ran and the contents of the file. Check this in backoffice.

Former Member
0 Kudos

Hi Leo,

Thanks for your suggestion .

Regards,