La función JavaLib.storeNew es una de las diversas funciones de acceso Java.
JavaLib.storeNew( idAlmacén javaObjId in, clase STRING in {, argumento anyEglPrimitive in})
Este argumento es un literal de serie o un elemento de tipo CHAR, DBCHAR, MBCHAR o UNICODE. El identificador debe haberse convertido temporalmente a objID, como en el ejemplo que figura más adelante. EGL elimina blancos de un solo byte y de doble byte del principio y el final del valor del argumento, que es sensible a mayúsculas y minúsculas.
El nombre totalmente calificado de una clase Java.
Este argumento es un literal de serie o un elemento de tipo CHAR, DBCHAR, MBCHAR o UNICODE. EGL elimina blancos de un solo byte y de doble byte del principio y el final del valor del argumento, que es sensible a mayúsculas y minúsculas.
Puede ser necesaria una conversión temporal, como se especifica en el apartado Acceso Java (palabras del sistema).
Se aplican las normas de conversión de tipos Java. Por ejemplo, no se produce ningún error si se pasa un tipo short a un parámetro de constructor declarado como int.
Para evitar perder precisión, utilice un elemento float EGL para un double Java y un elemento smallfloat EGL para un float Java. Si utiliza otro de los tipos EGL, probablemente se redondeará un valor.
El área de memoria del programa invocante no cambia, independientemente de la acción realizada por el constructor.
JavaLib.storeNew( (objId)"storeId", "myClass", 36 );
Un error producido durante el proceso de JavaLib.storeNew puede establecer sysVar.errorCode en uno de los valores que figuran en la tabla siguiente.
Valor de sysVar.errorCode | Descripción |
---|---|
00001000 | Un método invocado ha lanzado una excepción o como resultado de una inicialización de clase. |
00001001 | El objeto era nulo o el identificador especificado no estaba en el espacio de objetos |
00001002 | No existe o no puede cargarse un método, campo o clase públicos con el nombre especificado |
00001003 | El tipo primitivo EGL no coincide con el tipo esperado en Java |
00001006 | No ha podido cargarse la clase de una conversión temporal de argumento a nulo |
00001007 | Se ha lanzado una excepción de tipo SecurityException o IllegalAccessException durante un intento de obtener información acerca de un método o campo; o se ha intentado establecer el valor de un campo declarado como final |
00001008 | No puede llamarse al constructor; el nombre de clase hace referencia a una clase abstracta o interfaz |
Conceptos relacionados
Diagrama de sintaxis para funciones EGL
Consulta relacionada
Biblioteca JavaLib de EGL
getField()
invoke()
isNull()
isObjID()
qualifiedTypeName()
remove()
removeAll()
setField()
store()
storeCopy()
storeField()
Tareas relacionadas
Diagrama de sintaxis para sentencias y mandatos EGL