Muchas gracias
He probado lo que me mandas y me funciona.
Gracias y saludos.
-----Mensaje original-----
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] nombre de alex martinez
Enviado el: martes, 15 de marzo de 2005 12:10
Para: [email protected]
Asunto: Re: Excepcion de Java
He probado tu ejemplo y me funciona despu�s de realizar los siguientes
cambios, no todos son obligatorios, pero no he podido resistirme....
Te detallo:
- cambiar el ccsid a 1145. Con el valor 284 tambien funciona, pero no
tengo ni idea de a qu� pais corresponde el ccsid 280 que tu utilizas.
- definir nameSpace como te aconsejaba, 10 primeros caracteres para el
nombre y 10 ultimos para la biblioteca. En este caso el espacio de
usuario es SPLFILES en la biblioteca AJUT400.
- He cambiado MAX_MESSAGE_SIZE por 32768, como tama�o inicial del
espacio de usuario. Yo prefiero crearlo de peque�o tama�o y que el
sistema lo amplie seg�n sea necesario, en lugar de que sea "enorme" y
quiz�s nunca llegue a utilizar todo el espacio asignado.
- Y unos cambios en el m�todo toBytes para los parametros userName,
outqName, formName y UserData de la llamada a la API QUSLSPL.
te copio el fuente:
import com.ibm.as400.access.*;
public class CrearUsrSpc {
public static void main(String[] args) {
AS400 system = new AS400();
int ccsid = 1145;
AS400Text text1Type = new AS400Text(1, ccsid, system);
AS400Text text8Type = new AS400Text(10, ccsid, system);
AS400Text text10Type = new AS400Text(10, ccsid, system);
AS400Text text20Type = new AS400Text(20, ccsid, system);
AS400Text text50Type = new AS400Text(50, ccsid, system);
AS400Bin4 intType = new AS400Bin4();
String nameSpace = "SPLFILES AJUT400";
ProgramCall pgm = new ProgramCall(system);
// Ejecutamos en primer lugar la API de creacion de un User
Space.
ProgramParameter[] parms = new ProgramParameter[6];
byte[] userSpace = new byte[20];
text20Type.toBytes(nameSpace, userSpace);
parms[0] = new ProgramParameter(userSpace);
byte[] attribute = new byte[10];
text10Type.toBytes("AJUT400", attribute);
parms[1] = new ProgramParameter(attribute);
byte[] msgsize = intType.toBytes(32768);
parms[2] = new ProgramParameter(msgsize);
byte[] format = new byte[1];
text1Type.toBytes(" ", format);
parms[3] = new ProgramParameter(format);
byte[] authority = new byte[10];
text10Type.toBytes("*ALL", authority);
parms[4] = new ProgramParameter(authority);
byte[] description = new byte[50];
text50Type.toBytes("Creado por Ajut400", description);
parms[5] = new ProgramParameter(description);
pgm.setThreadSafe(true);
try {
if (!pgm.run("/QSYS.LIB/QUSCRTUS.PGM", parms)) {
throw new AS400Exception(pgm.getMessageList());
}
int basepos = 104;
byte[] retData = parms[0].getOutputData();
} catch (Exception e) {
e.printStackTrace();
}
// Ejecutamos en primer lugar la API en la que definimos el
Spool
que queremos procesar
ProgramParameter parms1[] = new ProgramParameter[6];
byte[] userSpace1 = new byte[20];
text20Type.toBytes(nameSpace, userSpace1);
parms1[0] = new ProgramParameter(userSpace1);
byte[] format1 = new byte[8];
text8Type.toBytes("SPLF0100", format1);
parms1[1] = new ProgramParameter(format1);
byte[] userName = new byte[10];
text10Type.toBytes("ALEX", userName);
parms1[2] = new ProgramParameter(userName);
byte[] outqName = new byte[20];
text20Type.toBytes("*ALL", outqName);
parms1[3] = new ProgramParameter(outqName);
byte[] formName = new byte[10];
text10Type.toBytes("*ALL", formName);
parms1[4] = new ProgramParameter(formName);
byte[] userData = new byte[10];
text10Type.toBytes("*ALL", userData);
parms1[5] = new ProgramParameter(userData);
pgm.setThreadSafe(true);
String str = "";
try {
if (!pgm.run("/QSYS.LIB/QUSLSPL.PGM", parms1)) {
throw new AS400Exception(pgm.getMessageList());
}
int basepos = 104;
byte[] retData = parms1[0].getOutputData();
} catch (Exception e) {
e.printStackTrace();
}
}
}
_____________________________________________________
Forum.HELP400 es un servicio m�s de NEWS/400.
� Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________
Para darte de baja, env�a el mensaje resultante de pulsar
mailto:[EMAIL PROTECTED]
_____________________________________________________
Forum.HELP400 es un servicio m�s de NEWS/400.
� Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________
Para darte de baja, env�a el mensaje resultante de pulsar
mailto:[EMAIL PROTECTED]