viadee / vPAV

viadee Process Application Validator
https://www.viadee.de/java/process-application-validator
BSD 3-Clause "New" or "Revised" License
48 stars 14 forks source link

3.0.7-SNAPSHOT doesn't find service java delegate class #251

Closed Charles-Irvine closed 3 years ago

Charles-Irvine commented 3 years ago

I have a process model with a service class implemented as a Java delegate. The class is defined and present in the classes directory. vPAV version 3.0.7-SNAPSHOT erroneously says that the class file is missing:

image

Version 3.0.6 doesn't report the error.

To Reproduce Steps to reproduce the behavior: Create simple process model with a service class, define the class in your project and run vPAV against it.

sdibernardo commented 3 years ago

Can you provide your example project via e.g. GitHub so I can reproduce the error?

Charles-Irvine commented 3 years ago

I'd be glad to. I can't use any of my current projects as they all use protected repositories. I suspect that you will see the problem in any project that has a java delegate service task. Let me know if you don't have any such project handy. If not, I'll put one together real quick.

sdibernardo commented 3 years ago

If you are able to provide a reproducible test case, that would be awesome! Then I´ll gladly take a look and try to reproduce and fix the error.

Charles-Irvine commented 3 years ago

Well, I created a test project to try to reproduce the problem, but in the test project the problem doesn't occur. In the project where the problem is occurring, if I specify 3.0.6 for vPAV, the problem doesn't occur. If I change it to 3.0.7-SNAPSHOT the problem does occur. So, for now, I'm stuck. Any ideas on how I can debug or is there anything that I should look at?

Charles-Irvine commented 3 years ago

Since I'm not getting the error in my test project using 3.0.7-SNAPSHOT, in that project I can try out the changes that you made. Do you have a description of the new tests so that I can try them out? Thanks

sdibernardo commented 3 years ago

What does you setup look like? Do you use Spring to initialize your application context? Is the referenced bean available in the context? Is there a possible typo? Or do you reference the class via full class reference?

sdibernardo commented 3 years ago

I have quickly double checked: Using a direct class reference as well as a delegate expression both work fine with 3.0.6 as well as 3.0.7-SNAPSHOT. Our unit tests confirm that everything works as intented.

Can you provide more information regarding the issue?

Here you can find information on how to use the LinterCheck with a single pattern implemented thus far.

Charles-Irvine commented 3 years ago

I'm not sure what happened by all of the sudden the problem has disappeared. 3.0.7-SNAPSHOT is not reporting a missing class. Maybe something was amiss in by target directory. Why there would be different behavior between the two versions is curious. Anyway, I'll close the ticket. Sorry for the bother.