I have a PB 10.00 application which executes a Jboss server
method which returns a collection of objects. In my PB
client I then iterate through the collection with
"it.next_j()" method, casting the result of that function to
the related proxy object type (which I previously generated)
and then calling its access methods to copy the data into a
datawindow. This works fine in the IDE but fails when
compiled to an executable. It always fail on the
"it.next_j()" step with the error "proxy not found" (see
attached file for the exact text).
I have written a PowerBuilder Version 10 application which connects to a JBoss application server.
It calls a method on the server which returns a collection of objects for which proxies have been
previously generated. The collection is iterated through with the following code to copy each object
from the collection into a separate datawindow row:
// Proxy Value object
// Local variables
boolean ok = true
// Check arguments
if not(isvalid(list)) or not(isvalid(data)) then return false
// Copy the list of objects into the datawindow
row = 0
it = list.iterator()
do while it.hasnext()
value = it.next_j()
row = data.insertrow(0)
if row < 0 then exit
// Copy the object into the datawindow row
if not(f_myfone_fromejb_midlet_instance(data, row, value)) then
ok = false
This works perfectly in developmemt mode in PowerBuilder, with the method returning the data and the data
being copied into the datawindow successfully.
But when I compile the application into a p-code or machine-code executable (without any dynamic
libraries - all built into one large executable) it always fails on the step
"value = it.next_j()" - i.e. when the current iterator value is cast to the proxy object (which
has previously been generated from my Jboss application jar file). The following error exception
is thrown when the "value = it.next_j()" statement is executed:
"Failed to find the proxy to represent the Java class: com.omnifone.server.ejb.MidletInstance.MindletInstanceValue.
It implememts the following interfaces: java.io.Serializable;"
Note that the com.omnifone.server.ejb.MidletInstance.MidletInstanceValue proxy does indeed exist
in my proxy .pbl which is in the application library path. This works perfectly well in
development and so there is nothing wrong with the code or method.
However, there appears to be a bug in the generation of the executable or in a .dll which this ejb
client relies upon.
Please solve this urgently.
If you would be so kind as to keep me informed of your progress/decision that would be great as
my company is prevented from releasing our software to a customer because of this issue! Please
email "firstname.lastname@example.org" or "email@example.com". Thanks.