Weblogic appc: enable common arguments in ejb client bank

I have an EJB that returns a list of my own ValidationMessage objects:

 @Remote public interface Intf { List<ValidationMessage> validateFile(); } 

I am creating a JAR client JAR using the weblogic appc utility . The problem is that it does not include the ValidationMessage class in the client JAR. Perhaps he does not see the dependency of this class, because he only looks at the compiled code when the general information is already deleted.
If I add another dummy method that returns this class directly, everything will be fine in the interface.

 @Remote public interface Intf { List<ValidationMessage> validateFile(); ValidationMessage dummy(); } 

My question is: is there a way to fix this without adding a dummy method? Is there a way to control what is included in the appc in the client JAR?

+6
java ejb weblogic
source share
2 answers

This is not a real answer, and I do not know WebLogic or the appc utility.

This is similar to the issue of erasing generics. The actual return type from the validateFile() method is the raw type of List ; while there is additional information in the class file for restoring type parameters, some tools do not check them.

I predict that this problem will disappear if you also specify the missing class in the method parameter.

0
source share

I had a simialr problem with appc where I wanted to override some POJOS created for the JAX-WS client.

I used this option (-output) to generate output to the exploded directory, not the client jar.Do ant copy your required .class files to the client directory and create your own jar.

You can see this option if you execute "java weblogic.appc" execute setEnv.cmd

-output Specifies an alternate output archive or directory. If not specified, the output will be placed in the source archive or directory.

check if this works

0
source share

All Articles