0 Seguidores · 14 Publicaciones

NET Framework (pronunciado dot net) es una estructura de software desarrollada por Microsoft, la cual se ejecuta principalmente bajo Microsoft Windows.

El sitio oficial

.NET es compatible con InterSystems Data Platform.

Artículo Jose-Tomas Salvador · nov 27, 2024 3m read

InterSystems IRIS proporciona un entorno completo para el desarrollo de aplicaciones, diseñado para crear aplicaciones sofisticadas centradas en datos y análisis intensivo, conectando silos de datos y aplicaciones. Está preparado para trabajar con todas las tecnologías comunes de desarrollo de manera abierta y basada en estándares, y admite tanto la programación del lado del servidor como del lado del cliente.

0
0 57
Artículo Pierre-Yves Duquesnoy · jun 16, 2020 26m read

Introducción

InterSystems IRIS 2020.1 incluye PEX (Production EXtension Framework), para facilitar el desarrollo de producciones de Interoperabilidad de IRIS con componentes escritos en Java o .NET.

Gracias a PEX, un desarrollador de integraciones con conocimientos Java o .NET puede beneficiarse de la potencia, escalabilidad y robustez del framework de Interoperabilidad de InterSystems IRIS, y ser productivo en muy poco tiempo.

1
0 595
Artículo Daniel Aguilar · feb 25, 2022 6m read

Hola!

Llevaba un tiempo queriendo dedicarle un rato para implementar alguna DLL o algo que pudiese usar desde Caché y al final he sacado un huequillo, si te interesa poder producir mensajes que se envíen a Kafka de una manera rápida estás en el lugar adecuado ;-)

Antes de daros la chapa con lo que vamos a ver os hago un resumen para que decidáis si os puede interesar leer el artículo.

En este artículo nos vamos a centrar "solo" en la parte de producir mensajes y enviarlos a Kafka:

¿Cómo funciona?

Uso una DLL de .Net (Netframework 4.5)  que he hecho (está dentro de la carpeta dll del repositorio)

0
0 977
Artículo Pierre-Yves Duquesnoy · mar 10, 2021 5m read

Con el lanzamiento de PEX en InterSystems IRIS 2020.1 e InterSystems IRIS for Health 2020.1, los clientes tienen una mejor forma de incorporar Java en las producciones que con el Java Business Host. PEX proporciona un completo conjunto de APIs para construir la interoperabilidad de los componentes y está disponible tanto en Java como en .NET. Java Business Host ha sido discontinuado y se retirará en una versión futura.

Ventajas de PEX

  • Permite que los desarrolladores creen cualquier componente de producción tanto en Java como en .NET
  • Se pueden transferir estructuras de mensajes más complejas entre los componentes
  • Configuración simplificada
  • Workflow de desarrollo simplificado, sin necesidad de ObjectScript.

El resto de este artículo se centra en cómo migrar el código existente de Java Business Host a PEX.

Resumen

Las clases y las interfaces que utiliza PEX son diferentes a las de Java Business Host (JBH). Aquí ofrecemos un resumen de las diferencias, pero la documentación recoge toda la información necesaria.

Cómo cambiar un Business Service desde Java Business Host a PEX

Para crear un PEX Business Service, debes implementar com.intersystems.enslib.pex.BusinessService en vez de com.intersystems.gateway.bh.BusinessService.

El patrón de diseño utilizado por PEX para el Business Service ha cambiado de uno en el que se espera que el servicio inicie un subproceso para producir mensajes, a otro en el que el servicio implementa una función que es llamada periódicamente para producir mensajes.

En JBH, tu código se parecería a esto:

  @Override
  public boolean OnInit(Production p) throws Exception {
    production = p;

    if (messageThread == null) {
      Messager messager = new Messager();
      messageThread = new Thread(messager);
      messageThread.start();
    }

    return true;
  }

En PEX, solo necesitas implementar tres funciones:

  public void OnInit() throws Exception {
    // Initialization
    return;
  }

  public Object OnProcessInput(Object messageInput) throws Exception {
    // Here is where you call SendMessage() or SendMessageAsync()

    return null;
  }

  public void OnTearDown() throws Exception {
    // Shut down
    return;
  }

También deberás cambiar la forma en que se utiliza la configuración, se entregan los mensajes y se hace logging. Hablaremos de eso más adelante.

Cómo cambiar una Business Operation desde Java Business Host a PEX

Para crear una PEX Business Operation, debes implementar com.intersystems.enslib.pex.BusinessOperation en vez de com.intersystems.gateway.bh.BusinessOperation.

El patrón de diseño para Business Operations es estructuralmente el mismo entre JBH y PEX, pero han cambiado los parámetros a dos puntos de acceso principales.

Cambios en OnInit()

En PEX, OnInit() no requiere de ningún parámetro.

Cambios en OnMessage()

En PEX, OnMessage() recibe un Object genérico en vez del String usado en JBH. Esto permite al autor de la producción transmitir cualquier tipo de mensaje que desee.

En JBH, tu aplicación pudo haber tenido este aspecto:

  public boolean OnMessage(String message) throws Exception {
    // Business logic here
    return true;
  }

En PEX, el parámetro es un Java Objetct genérico, que se debe lanzar de forma adecuada, lo que permite transmitir mensajes más complejos que únicamente cadenas. Este es un ejemplo de cómo extraer una solicitud que es una secuencia de archivos:

  public Object OnMessage(Object request) throws Exception {
    com.intersystems.jdbc.IRISObject streamContainer = (com.intersystems.jdbc.IRISObject)request;
    com.intersystems.jdbc.IRISObject str = (com.intersystems.jdbc.IRISObject)streamContainer.get("Stream");
    String originalFilename = (String)streamContainer.get("OriginalFilename");

    Long contentSize = (Long)str.get("Size");
    String content = (String)str.invoke("Read", contentSize);

    // Business logic here

    return null;
  }

También deberás cambiar la forma en que se utiliza la configuración, se entregan los mensajes y se hace logging. Hablaremos de eso más adelante.

Configuración

Se ha simplificado la declaración de la configuración.

La configuración en JBH se declaraba mediante una cadena SETTINGS y se obtenía a través de un código que se parece a algo como esto:

  String setting = production.GetSetting("Min");
  if (!setting.isEmpty()) {
    min = Integer.parseInt(setting);
  }

En PEX, la configuración son solo campos para miembros públicos. Estos se completan automáticamente cuando la clase crea una instancia.

  public int Min = 0;

Cualquier campo de un miembro público está disponible para que se establezca en una producción, en la medida en que el campo del miembro sea de un tipo básico de Java (String, int, etc.).

Mensajes

El envío de mensajes es más potente. En JBH, los mensajes se envían como cadenas. En PEX, los mensajes se envían como objetos- IRISObject, para objetos definidos en ObjectScript, o una subclase de com.intersystems.enslib.pex.Message, para clases definidas en Java.

En JBH, tu código se parecería a esto:

  production.SendRequest(value.toString());

En PEX, sería algo como esto:

  MyExampleMessageClass req = new MyExampleMessageClass("message to send"); 
  SendRequestAsync(Target, req);

Logging

Todas las funciones de logging son similares, solo que se nombran de manera diferente.

En PEX, se registraría un mensaje informativo a través de LOGINFO()

  LOGINFO("Received message");

Object Gateway

JBH necesitaba su propio portal. Con PEX, puedes utilizar un único portal de Java para todas tus necesidades de Java. O puedes utilizar varios portales. Depende de ti. Aquí encontrarás una buena introducción al portal de Java.

Conclusión y comentarios

Si aún no has probado PEX, ¿a qué está esperando? PEX permite resolver un conjunto mucho más amplio de problemas empresariales con menos código, además de que ahora también puedes hacer cualquier cosa en .NET.

Si tienes salguna pregunta o problema para migrar tu aplicación de JBH a PEX, puedes contactar conmigo o con el Centro de Soporte Internacional (WRC).

1
0 137
Anuncio David Reche · jun 1, 2020

¡Hola Comunidad!

El plazo para participar en el Tercer Concurso para Desarrolladores de InterSystems ha terminado y empieza la fase de votación.

Hemos recibido 8 aplicaciones - así que ya hay suficientes para elegir la mejor!

¿Cómo puedes votar?

Es muy fácil: tienes un voto, y tu voto irá en la Nominación de los Expertos o en la Nominación de la Comunidad.

0
0 98
Anuncio Esther Sanchez · jun 1, 2020

¡Hola Comunidad!

Por si os lo perdisteis... o queréis volver a verlo, ya está disponible la grabación del webinar "Implementar integraciones con .NET o Java sobre InterSystems IRIS" que realizamos el pasado 20 de mayo.

Podéis verlo aquí: Grabación webinar Integraciones con .NET o Java sobre InterSystems IRIS >>

Esperamos que os resulte útil yes

0
0 89
Anuncio Esther Sanchez · mayo 8, 2020

¡Hola a tod@s!

Os invitamos a un nuevo webinar en español: "Implementar integraciones con .NET o Java sobre InterSystems IRIS", el 20 de mayo, a las 16:00 CEST.

Si eres desarrollador de integraciones con conocimiento en .NET o Java, este webinar te muestra como aumentar aún más la potencia de la plataforma de interoperabilidad InterSystems IRIS, sin necesidad de desarrollar directamente en el framework.

2
0 159
Anuncio David Reche · mayo 11, 2020

¡Hola desarrolladores!

¡Ya hemos lanzado el siguiente concurso para crear soluciones de código abierto utilizando InterSystems IRIS Data Platform!

¡Así que damos la bienvenida al tercer concurso de programación con InterSystems!

El tema de este concurso es API Nativa deInterSystems IRIS.

El concurso estará activo durante tres semanas: del 18 de mayo al 7 de junio de 2020

 

1
0 156
InterSystems Official Jose-Tomas Salvador · abr 16, 2020

Estoy encantado de anunciar que InterSystems se unirá a la comunidad de código abierto (open source) en el proyecto de Extensión de Visual Studio Code para InterSystems ObjectScript. A principios de este año Raj Singh publicó que emprendíamos un viaje para redefinir el futuro de nuestra estrategia en relación al IDE, y llegamos a la conclusión de que es Visual Studio Code el IDE que puede soportar ese futuro. Es rápido, estable, rico en funcionalidad, y construido sobre una arquitectura tecnológica moderna que nos da la posibilidad de ofrecerte una funcionalidad como nunca antes para tu

0
0 124
Anuncio David Reche · nov 7, 2019

La versión 2019.3 de InterSystems IRIS, IRIS for Health e IRIS Studio ya está disponible.

Está disponible a través del Centro de Soporte Internacional,  con número de compilación 2019.3.0.311.0.

InterSystems IRIS Data Platform 2019.3 incluye muchas funcionalidades nuevas:

0
0 147