Unhandled Exception in OST Generation

Issue #91 resolved
Andrew Chinn created an issue

Environment

  • IntellJ Idea Ultimate - Trail ** version: 14.1.4
  • Illuminated Cloud - Evaluation ** Version 1.4.1.1

Problem

When generating the OST on my project I am getting a Unhandled Exception java.lang.classCastException. This happens when it is applying the class overlay to a specific class in a managed package.

Expected Functionality

As a user I expect that this error would be caught and the application of failed overlays continues. Then I imagine some kind of list, detailing the overlays that could not be applied. That way I would have the majority of my symbols for auto-complete and I would know which parts of my project would not have them.

I have attached a screenshot of the error.

Comments (12)

  1. Scott Wells repo owner

    HI, Andrew. I'm sorry for the inconvenience. Can you please send me the relevant extract from idea.log so that I can isolate exact what's going on here and how best to address it? You can find that by going into "Help>Show Log in Explorer/Finder/etc." Thanks!

  2. Andrew Chinn reporter

    2015-08-17 00:25:41,800 [ 75741] ERROR - View.AbstractTreeStructureBase - Last Action: IlluminatedCloud.GenerateOfflineSymbolTable 2015-08-17 00:25:42,002 [ 75943] WARN - si.impl.ApexPrimitiveTypeMixin - No declaration found for primitive type String 2015-08-17 00:25:42,007 [ 75948] WARN - si.impl.ApexPrimitiveTypeMixin - No declaration found for primitive type Id 2015-08-17 00:26:55,281 [ 149222] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedSystemClasses.json 2015-08-17 00:26:55,328 [ 149269] WARN - loud.symtab.SystemDeclarations - Failed to find an adjustment for APEX_OBJECT typed parameter System__Aura.redirect.pageReference; using Object. 2015-08-17 00:26:55,338 [ 149279] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedCustomClasses.json 2015-08-17 00:26:55,423 [ 149364] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedSobjectDescribes.json 2015-08-17 00:26:55,674 [ 149615] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedSobjectDocumentation.json 2015-08-17 00:26:55,770 [ 149711] INFO - loud.symtab.OfflineSymbolTable - Querying class summary information 2015-08-17 00:26:56,475 [ 150416] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedApexClassIdentifiers-Class.json 2015-08-17 00:26:56,499 [ 150440] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedApexClassIdentifiers-Interface.json 2015-08-17 00:26:56,500 [ 150441] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedApexClassIdentifiers-Enum.json 2015-08-17 00:26:56,501 [ 150442] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedApexClassIdentifiers-Exception.json 2015-08-17 00:26:56,501 [ 150442] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedApexClassIdentifiers-Constructor.json 2015-08-17 00:26:56,510 [ 150451] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedApexClassIdentifiers-Method.json 2015-08-17 00:26:56,595 [ 150536] INFO - loud.symtab.OfflineSymbolTable - Loading cached state from CachedApexClassIdentifiers-Variable.json 2015-08-17 00:26:58,129 [ 152070] WARN - atedcloud.symtab.ApexSignature - Failed to decode signature '(udatabase.batchablecontext;)usystem.iterable<g>'. Using default decoding '(database.batchablecontext, Object) : Object' java.lang.IllegalArgumentException: Found CLASS signature element with no class/interface/enum at the end of usystem.iterable<g> at com.illuminatedcloud.symtab.ApexSignature.decode(SourceFile:220) at com.illuminatedcloud.symtab.ApexSignature.decode(SourceFile:109) at com.illuminatedcloud.symtab.OfflineSymbolTable.convertToApexSymbol(SourceFile:2797) at com.illuminatedcloud.symtab.OfflineSymbolTable.access$1600(SourceFile:119) at com.illuminatedcloud.symtab.OfflineSymbolTable$20$4.compute(SourceFile:2204) at com.illuminatedcloud.symtab.OfflineSymbolTable$20$4.compute(SourceFile:2198) at com.illuminatedcloud.symtab.OfflineSymbolTable$5.compute(SourceFile:653) at com.illuminatedcloud.symtab.OfflineSymbolTable.runActivityStep(SourceFile:624) at com.illuminatedcloud.symtab.OfflineSymbolTable.runActivityStep(SourceFile:648) at com.illuminatedcloud.symtab.OfflineSymbolTable$20.compute(SourceFile:2197) at com.illuminatedcloud.symtab.OfflineSymbolTable$20.compute(SourceFile:2132) at com.illuminatedcloud.symtab.OfflineSymbolTable$4.compute(SourceFile:597) at com.illuminatedcloud.symtab.OfflineSymbolTable.runActivity(SourceFile:565) at com.illuminatedcloud.symtab.OfflineSymbolTable.runActivity(SourceFile:592) at com.illuminatedcloud.symtab.OfflineSymbolTable.convertToClassOverlays(SourceFile:2131) at com.illuminatedcloud.symtab.OfflineSymbolTable.loadClassOverlays(SourceFile:1911) at com.illuminatedcloud.symtab.OfflineSymbolTable.applyClassOverlays(SourceFile:1904) at com.illuminatedcloud.symtab.OfflineSymbolTable.generateOfflineSymbolTable(SourceFile:710) at com.illuminatedcloud.intellij.settings.project.OfflineSymbolTableGenerator$3.run(SourceFile:197) at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:563) at com.intellij.openapi.progress.impl.CoreProgressManager$8.run(CoreProgressManager.java:367) at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:152) at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:452) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:402) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54) at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:137) at com.intellij.openapi.application.impl.ApplicationImpl$10$1.run(ApplicationImpl.java:617) at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:400) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56) 2015-08-17 00:26:58,681 [ 152622] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:58,682 [ 152623] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:58,785 [ 152726] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:58,785 [ 152726] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,129 [ 153070] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,129 [ 153070] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,155 [ 153096] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,155 [ 153096] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,227 [ 153168] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,227 [ 153168] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,227 [ 153168] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,228 [ 153169] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,228 [ 153169] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,228 [ 153169] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,228 [ 153169] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,229 [ 153170] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,229 [ 153170] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,229 [ 153170] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,229 [ 153170] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,230 [ 153171] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,230 [ 153171] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,230 [ 153171] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,230 [ 153171] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,231 [ 153172] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,231 [ 153172] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,231 [ 153172] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,231 [ 153172] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,232 [ 153173] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,232 [ 153173] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,232 [ 153173] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,232 [ 153173] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,233 [ 153174] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,233 [ 153174] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,233 [ 153174] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,234 [ 153175] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,234 [ 153175] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,234 [ 153175] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,234 [ 153175] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,235 [ 153176] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,235 [ 153176] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,235 [ 153176] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,235 [ 153176] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,235 [ 153176] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,236 [ 153177] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,236 [ 153177] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,236 [ 153177] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,236 [ 153177] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,237 [ 153178] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,237 [ 153178] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,237 [ 153178] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,237 [ 153178] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,238 [ 153179] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,238 [ 153179] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,238 [ 153179] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,238 [ 153179] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,239 [ 153180] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,239 [ 153180] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,239 [ 153180] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:26:59,239 [ 153180] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,444 [ 154385] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,445 [ 154386] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,445 [ 154386] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,445 [ 154386] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,456 [ 154397] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,457 [ 154398] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,457 [ 154398] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,651 [ 154592] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,731 [ 154672] WARN - cloud.symtab.ApexClassOverlays - Unknown modifier found: webService 2015-08-17 00:27:00,768 [ 154709] WARN - lij.coverage.ApexCoverageSuite -
    java.lang.ClassCastException

  3. Scott Wells repo owner

    Thanks, Andrew. That definitely helps. For one thing, it appears that my parser is missing the webService keyword. That's certainly easy to add, but I don't think that's what's keeping your OST from generating; it's just keeping that modifier from ending up in the corresponding OST classes.

    Let me see what I can figure out about the signature decoding error above that. It certainly seems to be the main culprit here. I'll see if I can get out a patch today that remedies this issue for you.

  4. Scott Wells repo owner

    Andrew, it actually doesn't look like the signature decoding error above is the issue. I'm logging the entire stack trace but it's not keeping OST generation from proceeding. Can you run this again and send me the entire idea.log so I can search it for the root cause?

  5. Scott Wells repo owner

    Thanks, Jon. That log helps tremendously! I can definitely guard against that and log the situation so that it won't fail and I can get additional diagnostic information as to exactly what type of object is being found instead of the expected one. I'll try to get this and one other fix out in the next day so that you guys can get past this issue.

  6. Scott Wells repo owner

    This should be fixed in 1.4.2.0 which I've just uploaded to the plugin repository. Thanks for providing the required diagnostic information and please don't hesitate to let me know if you're still having an issue.

  7. Andrew Chinn reporter

    Fantastic, it is working correctly.

    sorry i did not get back fast enough with the log. I am happy to see it got resoled.

    I just updated and OST generated successfully for me. Thank you very much.

    cheers!

  8. Log in to comment