×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




Thanks Tom.

The compile still fails with the same messages.

It has to be something simple and subtle (at least to these eyes)

Pete

Armbruster, Tom wrote:
Pete,

I think you just need to declare your return type and process call on
the same line so the compiler knows to expect a return object from the
method.

Try this:

*+++++++++++++++++++++++++++++++++++
D RRGenerator_iPrintReport...
D PR N EXTPROC(*JAVA
D :'com.valadd.report.engine.-
D .Generator'
D :'iPrintReport')
D host like(jString)
D libraryList like(jString)
D userID like(jString)
D password like(jString)
D reportName like(jString)
D reportOutput like(jString)
D reportParam like(jString)
D outputFormat like(jString)
D compileFirst 1N value
Tom Armbruster

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Pete Helgren
Sent: Tuesday, April 15, 2008 2:13 PM
To: RPG programming on the AS400 / iSeries
Subject: A problem with prototypes for Java wrapper

I have a java program that I'd like to wrap with RPG. This is the first

attempt I have made at something like this (including placing prototypes

in a separate member and /copying them in). So there may because something obvious here that my ignorance is covering. When I compile the module, I get the following (V5R3M0):

A d d i t i o n a l D i a g n o s t i c M e s s a g e s Msg id Sv Statement Message text *RNF7535 30 000181 The type and attributes of parameter 9 do not

match those
of the prototype. *RNF5406 30 000178 The call passed fewer parameters than the prototype
indicates are required.
I know what it is saying but looking at my code and the /copy member I don't see the mismatch.

Here is the relevant /copy:

*--------------------------------------------------------
*
* RPG Wrapper for RRGenerator_iPrintReport
*
*--------------------------------------------------------
D rrg_iPrintReport...
D PR 1N
D prHost like(jString)
D prLibList like(jString)
D prUserID like(jString)
D prPassword like(jString)
D prReportName like(jString)
D prReportOut like(jString)
D prRepParam like(jString)
D prOutFormat like(jString)
D prCompile 1N value
*+++++++++++++++++++++++++++++++++++
D RRGenerator_iPrintReport...
D PR 1N
D EXTPROC(*JAVA
D :'com.valadd.report.engine.-
D .Generator'
D :'iPrintReport')
D host like(jString)
D libraryList like(jString)
D userID like(jString)
D password like(jString)
D reportName like(jString)
D reportOutput like(jString)
D reportParam like(jString)
D outputFormat like(jString)
D compileFirst 1N value
The call is here:

P rrg_iPrintReport...
P B EXPORT
D rrg_iPrintReport...
D PI 1N
D peHost like(jString)
D peLibList like(jString)
D peUserID like(jString)
D pePassword like(jString)
D peReportName like(jString)
D peReportOut like(jString)
D peRepParam like(jString)
D peOutFormat like(jString)
D peCompile 1N value
D success s 1N
D
D
/free

success = RRGenerator_iPrintReport(peHost: peLibList: peUserID: <-- Line 178
pePassword: peReportName:
peReportOut: peRepParam:
peOutFormat: peCompile); <---Line 181

return success;
/end-free

As I count/compare parameters and types it looks good to me. What I am I missing?

Thanks,

Pete



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.