WSDL2RPG

configuration Apache, Zend et PHP , Web services
Répondre
BJ
Messages : 11
Enregistré le : mer. 04 oct. 2017, 05:53:21
Localisation : Montpellier

WSDL2RPG

Message par BJ »

Bonjour,

c'est mon premier web service et j'ai des problèmes avec les sources en C générés par wsdl2rpg. Il y en a 3 qui sont en erreur lors de la compilation et comme je ne connais pas le C, je suis stoppé. Je précise que nous sommes en V6R1 et que j'ai mis la machine à jour pour les PTF cette nuit, mais rien à faire. La compilation est en erreur. Que faire?

admin
Site Admin
Messages : 27
Enregistré le : mer. 14 févr. 2007, 17:24:50
Localisation : Carquefou (Nantes)
Contact :

Message par admin »

Sans le code erreur, le détail de l'erreur, voire un extrait de la liste de compilation ou de la JOBLOG, bien difficile de t'aider.....

BJ
Messages : 11
Enregistré le : mer. 04 oct. 2017, 05:53:21
Localisation : Montpellier

Message par BJ »

Bonjour,

merci pour le retour. En effet sans la compiul, on ne peut pas m'aider. Voici donc la partie du listing où l'erreur de syntaxe est signalée:

Fichier spoule
Fichier . . . . : WSC7 Page/Ligne 4/56
Contrôle . . . . Colonnes 1 - 130
Recherche . . . .
*...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8....+....9....+....0....+....1....+....2....+....3
154 |/** | 154
155 | ****************************************************************************** | 155
156 | * Function used to delete objects of type recupererDonneesPCEOperationResult. | 156
157 | ****************************************************************************** | 157
158 | */ | 158
5761WDS V6R1M0 080215 IBM ILE C for i5/OS cupererDonneesPCEOperationResult.c DEVLPTS 16/10/17 06:50:13 Page 5
159 | | 159
160 |void Axis_Delete_recupererDonneesPCEOperationResult(recupererDonneesPCEOperationResult* param, in\| 160
160 |t nSize) | 160
161 |{ | 161
162 | /* If NULL, just return */ | 162
163 | if (param == NULL) | 163
164 | return; | 164
165 | | 165
166 | /* Reclaim memory resources (recursion is used to reclaim arrays) */ | 166
*=SEVERE==========> CZM0046 Syntax error.
167 | if (nSize > 0) | 167
168 | { | 168
169 | int i; | 169
A suivre...

cmasse
Site Admin
Messages : 802
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

CCSID

Message par cmasse »

je vois l'erreur sur la ligne de commentaire...

Problème de CCSID ? si QCCSID est à 65535 passer le JOB à 297 avant...
Christian Massé (Volubis.fr)

BJ
Messages : 11
Enregistré le : mer. 04 oct. 2017, 05:53:21
Localisation : Montpellier

Message par BJ »

le ccsid est bien fixé à 297 sur la valeur QCCSID.
Je ne sais plus comment j'ai fait, mais avec RDI j'avais compilé le source dans l'IFS et le double clic sur l'erreur ouvrait un autre source et se positionnait sur la 1ère virgule de la ligne

, ENUMETATPCE_0=0, ENUMETATPCE_1=1, ENUMETATPCE_2=2,

avec le message syntax error. Ci joint le source

/*
* Copyright 2003-2006 The Apache Software Foundation.

*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* This file was auto-generated by the Axis C++ Web Service Generator (WSDL2Ws)
* This file contains functions to manipulate type etatPCE
*/

#if !defined(__ETATPCE_H__INCLUDED_)
#define __ETATPCE_H__INCLUDED_

#include <axis/AxisUserAPI.h>

/* ********************************************************************* */
/* --- Simple types and restrictions --- */
/* ********************************************************************* */

typedef xsdc__int etatPCE;
typedef xsdc__int_Array etatPCE_Array;
, ENUMETATPCE_0=0, ENUMETATPCE_1=1, ENUMETATPCE_2=2, ENUMETATPCE_3=3, ENUMETATPCE_9=9} etatPCE_Enum;

#endif /* !defined(__ETATPCE_H__INCLUDED_)*/

cmasse
Site Admin
Messages : 802
Enregistré le : mer. 14 févr. 2007, 18:00:03
Localisation : Nantes
Contact :

erreur

Message par cmasse »

Désolé, jamais rencontré cette erreur.

je veux bien compiler sur ma machine pour voir, mais le mieux semble être d'ouvrir un incident chez IBM.
Christian Massé (Volubis.fr)

BJ
Messages : 11
Enregistré le : mer. 04 oct. 2017, 05:53:21
Localisation : Montpellier

Message par BJ »

un copain a exécuté la commande wsdl2rpg sur sa machine en V7R3 et n'a pas eu de soucis mais je suis en V6R1 et cette version n'est plus maintenue par IBM. Je ne peux hélas pas ouvrir d'incident avec eux.

BJ
Messages : 11
Enregistré le : mer. 04 oct. 2017, 05:53:21
Localisation : Montpellier

Message par BJ »

Finalement j'ai pu progresser car en modififant légèrement le wsdl, l'outil WSL2RPG compile et crée le programme de service.
Maintenant j'ai un problème à l'exécution de l'api axissetsecure qui me renvoie l'erreur suivante:

Pointeur non défini pour position mémoire référencée.
Erreur. MCH3601 non intercepté par QAXIS10C à la spécif *N, inst X'0000'.
(C G D F) Appel à axiscStubS terminé en erreur.
(C G D F) Appel à axiscStubS terminé en erreur.

Le code RPG est celui-ci:

if stub_create_RecupererDonneesPCEService(xs_ds);

axiscStubSetSecure(WsStub.handle:
'/QIBM/USERDATA/ICSS/CERT/SERVER/DEFAULT.KDB':
'opera': 'label':'NONE':'05':'NONE');

Répondre