I copied PSUtilities package (all of its contents) to another package. During copying/saving process, get compiler error messages as below.
Error Msg:
D:\wM6QA\IntegrationServer\packages\Test\code\source\Test\PSUtilities_1\file.java:455: cannot resolve symbol
symbol : class JZOOWildCardFilter
location: class Test.PSUtilities_1.file
JZOOWildCardFilter filter = new JZOOWildCardFilter(filterString);
After this comapred files between PSUtilities and Copied folder, found JZOOWildCardFilter.java missing in copied folder. Manually copied this file and recompiled. But, still getting same error message. Checked compiling PSUtilities java service and it compiles without issues.
Any help how I can copy java services from PSUtilities.
I am trying to copy the PSUtilities.file:listFiles service out of PSUtilities and into a custom folder. It uses the JZOOWildCardFilter.class. I am copying the JZOOWildCardFilter.class file at the file level, and copying the code in Developer. The imports etc are exactly the same as the original.
It works fine if there is only 2 levels of folders.
EG: MyFolder1.file:listFiles
HOWEVER if i try and add a further sub folder, it cannot get it to work.
EG: MyFolder1.utilities.file:listFiles = no good.
There’s no limit. The thing is that if you move your listFiles, you also need to move JZOOWildCardFilter.class file (OR you need to import it in your service.)
Let’s take your example:
You created a service called MyFolder1.file:listFiles
In the background, the file code\classes\MyFolder1\file.class, which contains a listFiles method, was created
I’m assuming you then copied JZOOWildCardFilter.class to the same folder
Because the two classes are in the same folder, file.class doesn’t need to explicitly import JZOOWildCardFilter
Once you moved the service, this file got created: code\classes\MyFolder1\utilities\file.class
Now the two class files are in different folders so you should move JZOOWildCardFilter.class
Thanks for responding. I have got it working.
What you say below is correct. The only other change i had to make was to the actual JZOOWildCardFilter.class file.
I decompiled it, and at the top was PSUtilities as the package name (or whatever it is called - as you can tell i am no java expert). So i had to change that to: MyFolder1.utilities and then put the class file in: \code\classes\MyFolder1\utilities\
So in the end it was merely a java classpath issue (like the error was telling me) but being a java novice it took a bit of fiddling to get it working.
Thanks heaps though for your response. Always appreciated.
By the way, PSUtilities comes with the source, so you didn’t have to decompile the class. Look under code/source. Either way, glad to hear you got it to work.
Thanks for the tip. Indeed upon further investigation i found the source folder. Will keep that in mind for future use. At least i learnt how to decompile java class files as well!