Usando Hibernate, Spring, java con xhtml bajo el plugins de Maven. No me lee una función. El archivo arduino.xhtml tiene este código y no hay problema.
arduino.xhtml
Código:
Clase Arduino.java<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:p="http://primefaces.org/ui"> <h:head> <title>Arduino</title> <h1>Arduino</h1> </h:head> <h:body> <h:form> <p:panel header="Cuadro de control"> <p:panelGrid columns="1" id="gridname"> <p:outputLabel value="Led 8: " /> <p:commandButton id="led8on" value="ON" actionListener="#{arduino.led8ON}" update="resultado" /> <p:commandButton id="led8off" value="OFF" actionListener="#{arduino.led8OFF}" update="resultado" /> <p:inputText required="false" id="resultado" value="#{arduino.guardarUltimoValor}" /> <p:commandButton id="puerto" value="Iniciar puerto" actionListener="#{arduino.inicio_puerto}" update="resultado" /> <p:commandButton id="borrar" value="Borrar" actionListener="#{arduino.borrar}" update="resultado" /> </p:panelGrid> </p:panel> </h:form> </h:body> </html>
Código:
Sigo los consejos indicado aquí.package net.prueba.practica.business.test; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import gnu.io.*; // RXTX //import javax.comm.*; // SUN import java.util.Enumeration; @Component @Scope("view") public class Arduino { // Variables. final String LED8ON = "Led_8_ON"; final String LED8OFF = "Led_8_OFF"; String guardarUltimoValor = ""; // Métodos. public void inicio_puerto(){ System.out.println("Programa empeado."); // System.out.println(java.library.path); CommPortIdentifier serialPortId; //static CommPortIdentifier sSerialPortId; Enumeration enumComm; // SerialPort serialPort; enumComm = CommPortIdentifier.getPortIdentifiers(); while (enumComm.hasMoreElements()) { serialPortId = (CommPortIdentifier) enumComm.nextElement(); if(serialPortId.getPortType() == CommPortIdentifier.PORT_SERIAL) { System.out.println(serialPortId.getName()); } } System.out.println("Terminado satisfactoriamente."); } public void led8ON(){ guardarUltimoValor = LED8ON; System.out.println("Resultado: " + guardarUltimoValor); } public void led8OFF(){ guardarUltimoValor = LED8OFF; System.out.println("Resultado: " + guardarUltimoValor); } public void borrar(){ guardarUltimoValor = ""; System.out.println("Resultado: " + guardarUltimoValor); } // Getters y Setters. public String getGuardarUltimoValor() { return guardarUltimoValor; } public void setGuardarUltimoValor(String guardarUltimoValor) { this.guardarUltimoValor = guardarUltimoValor; } public String getLED8ON() { return LED8ON; } public String getLED8OFF() { return LED8OFF; } }
A pesar de poner las librerías rxtxSerial.dll y el .jar.
¿xhtml y java no es capaz de leer los puertos series que tiene el equipo?
Su código usado es:
Código:
La salida de la consola en spring debe ser:import gnu.io.*; // RXTX // import javax.comm.*; // SUN import java.util.Enumeration; public class ErsteSchritte { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("Program started"); //System.out.println(java.library.path); CommPortIdentifier serialPortId; //static CommPortIdentifier sSerialPortId; Enumeration enumComm; //SerialPort serialPort; enumComm = CommPortIdentifier.getPortIdentifiers(); while (enumComm.hasMoreElements()) { serialPortId = (CommPortIdentifier) enumComm.nextElement(); if(serialPortId.getPortType() == CommPortIdentifier.PORT_SERIAL) { System.out.println(serialPortId.getName()); } } System.out.println("Finished successfully"); } }
Cita:
Tal como indica aquí.Program started
Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version = RXTX-2.1-7
/dev/ttyS1
/dev/ttyS0
Finished successfully
Experimental: JNI_OnLoad called.
Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version = RXTX-2.1-7
/dev/ttyS1
/dev/ttyS0
Finished successfully
Experimental: JNI_OnLoad called.
¿Alguna sugerencia?
Saludos.