This page treats the fatal error 'Unable to process JSP analysis <AU_Name>(An exception occurred)' in JEE analysis with Core CAST AIP
This error message is a generic message and it may appear for any number of reasons.
In case you have to handle the classpath option, please refer to Official Documentation : CMS+-+J2EE+Technology+options
Release | Yes/No |
---|---|
8.3.x | |
8.2.x | |
8.1.x | |
8.0.x | |
7.3.x | |
7.2.x | |
7.0.x |
RDBMS Yes/No Follow the below steps: Check if issue occurs, due to specific source code files. For the following steps, an approximate calculation of the expected investigation time should be done, once the investigation method (file exclusion or dichotomy) has been determined . The analysis time can be found in the relevant information message at the end of the analysis log. For example: Execution duration=0 days, 03 hours, 17 mins, 07 secs If the issue is always reproduced for only one half of an one execution unit named EU. When EU 1 is split into two Execution Units and a test analysis is run, the first Execution Unit name EU 1-1 will take A/2 hours to fail, and the Execution Unit EU 1-2 will take A/2 hours to succeed. EU 1-1-2 For this scenario total analysis time = A+A/2+A/4+A/8+... If the issue is reproduced for both half's of an execution unit, then you will need to continue investigation for both half. Let's assume that this investigation will continue until Iteration 3 EU 1-1 EU 1-2 EU 1-1-1 EU 1-2-1 EU 1-1-2 EU 1-2-2 EU 1-2-1 EU 1-1-2 EU 1-2-1-1 EU 1-1-2-1 EU 1-2-1-2 EU 1-1-2-2 EU 1-2-1-1 EU 1-2-1-2 EU 1-2-1-1-1 EU 1-2-1-2-1 EU 1-2-1-1-2 EU 1-2-1-2-2 A/8 hours For this scenario total analysis time = A+A+A/2+A/4+... Take a backup of the Management Base, since for the following steps you will need to change the analysis configuration Verify if issue occurred during java file parsing or during resolving declarations in a java file. Open the analysis log and check the last information message before the error that contains parsing information. Depending on the CAST AIP version the initial parsing of java files is logged with the information message 'Parsing file' or 'Parsing Java file (phase 1)'. For example: The resolving declarations phase is logged with the information message 'Parsing file (resolve declarations)', followed by one or several 'Parsing Java file (phase 2)' messages. For example: Check if issue occurs for one analysis unit or can be reproduced for one analysis unit. In this case you should investigate with file exclusion or dichotomy at the file level Check if there is one or more analysis units contained in the execution unit. Using the analysis log filename, run the following query: Take for example the following result for the query Check if issue is reproduced by annotating the AU and executing the analysis just for the annotated AU Split the Execution Unit into multiple Execution Units to get one Analysis Unit per Execution Unit by running the following queries : Restore the management database Split the Execution Unit that has failed until you can reproduce issue with a minimum set of analysis units: Apply dichotomy at the file level, running analysis for the set of analysis units for which you can reproduce the issue If the below points do not help you to resolve the issue, contact CAST Technical Support with the following Relevant input. Oracle Server Microsoft SQL Server CSS3 CSS2 CSS1 Split : Number of Iterations Execution Unit that fails Exec. Unit. Split 1 Analysis Time Exec. Unit. Split 2 Analysis Time Total 0 EU 1 - - - - A hours 1 EU 1 EU 1-1 A/2 hours EU 1-2 A/2 hours A hours 2 EU 1-1 EU 1-1-1 A/4 hours EU 1-1-2 A/4 hours A/2 hours 3 EU 1-1-2-1 A/8 hours EU 1-1-2-2 A/8 hours A/4 hours 4 EU 1-1-2-1 EU 1-1-2-1-1 A/16 hours EU 1-1-2-1-2 A/16 hours A/8 hours … … … … … … … Split : Number of Iterations Execution Units that fail Exec. Unit. Split 1 Analysis Time Exec. Unit. Split 2 Analysis Time Total 0 EU 1 - - - - A hours 1 EU 1 EU 1-1 A/2 hours EU 1-2 A/2 hours A hours 2 A/2 hours A/2 hours A hours 3 A/4 hours A/4 hours A/2 hours 4 A/8 hours A/4 hours … … … … … … …
Parsing file : C:\CAST_Template\Deploy\ANDROID PHONE\app\src\main\java\com\SomeSourceCodegmt.java
Unable to process JSP analysis 'androidTest_66792039' (An exception occurred)
Unexternalized exception - Message is 'access violation'.
Parsing file (resolve declarations) : C:\CAST_Template\Deploy\ANDROID PHONE\app\src\main\java\com\SomeSourceCodegmt.java
Parsing Java file (phase 2) : [ C:\CAST_Template\Deploy\ANDROID PHONE\\Jars\org\some-1.2.jar]\org\\json\Some.class
Parsing Java file (phase 2) : [ C:\CAST_Template\Deploy\ANDROID PHONE\\Jars\org\someother.jar]\org\\json\Some.class
Unable to process JSP analysis 'androidTest_66792039' (An exception occurred)
Unexternalized exception - Message is 'access violation'SET search_path TO <your mngt db>;
SELECT object_name, execlog
FROM cms_j2ee_analysis
WHERE execlog like '%<Analysis Log file name>.castlog%'
and execstatus = 'ExecutionFailureStatus'
ORDER BY execlog
-Execution Unit corresponding to analysis log "My Source file based execution unit 2_151907-20170717142603.castlog", contains only one Analysis Unit : framework.
-Execution Unit corresponding to analysis log "My Source file based execution unit 3_155213-20170718095301.castlog", which contains several Analysis Units (CmdcProject,WS_TNPORT_EFMS, WS_TNPORT_GICM, appxxxWS...)------------------------------------
----- SPLIT THE J2EE EXEC UNIT -----
------------------------------------
UPDATE cms_j2ee_analysis -- This table contains the list of J2EE Analysis Unit
SET exectag = 'Split_1_annotation' || object_id -- This field contains the Execution Unit Anotation
where execlog like '%<Analysis Log file name>.castlog%'
and execstatus = 'ExecutionFailureStatus';
UPDATE cms_j2ee_analysis -- This table contains the list of J2EE Analysis Unit
SET active = 0 -- This will deactivate the analysis units that do not need to run.
where execlog not like '%<Analysis Log file name>.castlog%'
or execlog is null;
Relevant input