Java Enterprise

J2EE, MVC, JSF, Struts, Hibernate, Spring, EJB's, Ant.

MI SERVER SOCKET LEE STRING READLINE

hay un software de tercero hecho en leguaje C que quiere conectarse a mi server a traves de un socket pero ellos toman el string lo convierten a bytes y envian bytes.

como hago para que mi server socket puede leer bytes???
me toca crear un server socket nuevo que leea en bytes?? o como se realiza en dicho caso para que mi server que lee string readline lea tambien bytes???

COMO CREO UN LOG PARA UN SERVER SOCKET???

Que librerias y que debo tener en cuenta para crear un buen sistema de log para un server Sockets

TIMEOUT

Como se impelmente el timeout??

tengo algo asi:

SocketAddress sockaddr = new InetSocketAddress("localhost", 6666);
             
             this.socket = new Socket();
             this.socket.connect(sockaddr,this.readSocketTimeout);

pero parece que asi en timeout fuera por los siglos de los siglos ingnorando mi variable this.readSocketTimeout =60*1000 que me representa 1 minuto, y si encambio lo hago asi:

 this.socket = new Socket("localhost",6666);
this.socket.setSoTimeout(this.readSocketTimeout);

si me toma el minuto pero deja de funcionar mi aplicacion me toca volver a ejecutar.

alguien me puede indicar el funcionamiento correcto del timeout

JAXWS con Spring 3

Hola a todos pues el motivo del post es comentarles que actualmente por hazares del destino jaja Ok ya a lo que vamos,
estamos empezando un proyecto estilo SOA, donde vamos a comuincar todo via jaxWs si los ws de Java jejee XD, pues resulta que para la parate de BackEnd usarmos spring3 con el poderosisimo JDBCTEMPLATE y pues necesito inyectar un servicio @service, en una clase de webService java @webService, segun la documentacion de spring hay que hacer un bean que consuma solamente la URL del endPoint pero nome queda claro como hacerlo y el ejemplo que ponen es algo ambiguo quiero preguntar si alguien ya lo ha hecho y si es asi como se hace? un ejemplito no caeria mal jeje XD, les dejo el codigo del o que tengo hecho en hasta el momento. deantemano gracias

@WebService
public class UsuarioWS  {
        @Autowired
        private UsuarioServico usuarioServico;
        /**
         * Método que expone el servicio de consulta de usuario por ID
         * @param id
         * @return
         */

        @WebMethod
        public Usuario consultarUsuarioPorId(int id){
                Usuario usuario= usuarioServico.consultarUsuarioPorId(id);
                return usuario;
        }

        /**
         * @param usuarioServico the usuarioServico to set
         */

Drone.io, Integración Continua en unos cuantos pasos

Les quiero compartir lo fácil y sencillo que es usar Drone.io para Integración Continua (CI) de su proyecto.

En este caso lo usé como prueba en un repositorio donde se está gestando la v2 del portal de javaMexico.org, el cuál está en Github: https://github.com/javamexico/javamexico.org

Drone.io se integra automáticamente con tres servicios tanto para hacer login como para obtener el código de los proyectos que quieras construir:

  • Github
  • Bitbucket
  • Google Code

Esto es ventaja y desventaja, ya que es extremádamente fácil configurar un proyecto que esté en cualquiera de esas tres opciones, pero si tu proyecto no está en alguna de ellas Drone.io (al momento) no lo podrá construir.

La cuenta gratuita permite dar de alta cualquier cantidad de repositorios siempre y cuando sean públicos (proyectos de código libre), de lo contrario se puede adquirir un plan para repositorios privados.

PROBLEMA CON SOCKET Y ENVIO POR BYTES

muchachos no veo el error:

en el server tengo algo mas o menos asi:

public class ListenerSocket implements  Runnable{
   
   private  final String ENCODING = "ISO-8859-1";
   private Socket socket;

   private ObjectOutputStream outputObejct;
   private ObjectInputStream inputObject;
   
   
   private DataOutputStream outputdata;
   private DataInputStream  inputdata;
   
   
   //private InputStreamReader inputl;
   
   //version 3 en Uso
   private BufferedReader bufferInput;
 
   
    private BufferedReader entrada;
    private PrintStream salida;
    private InputStream out;
    public ListenerSocket(Socket socket)
    {
     
         this.socket = socket;
                 
    }
   
  public void run()
           
           
    {  
        String msg="";
        int total;
        try {
            entrada = new BufferedReader(new InputStreamReader(this.socket.getInputStream()));
            salida = socket.getInputStream();
           
           
             while (true)
             {
                 msg = msg+unEncodingMsn(salida.read)

              }
}
catch (IOException ex) {

Construye un flujo con Faces Flows en JSF 2.2 #Java EE 7 #NetBeans #Glassfish

JSF 2.2 en Java EE 7 trae un nuevo API para construir flujos en nuestra aplicación Web. Con Faces Flows puedes reutilizar flujos en otras aplicaciones. Aprende a construir un flujo básico:

http://javaconcafeina.blogspot.mx/2013/05/faces-flows-en-jsf-22-java-ee-...

Saludos

JSF 2.2 y HTML5 en Java EE 7. Integración más fácil

Hola, en mi último blog hablo de la integración de JavaServer Faces 2.2 con HTML5. De cómo ya no será necesario decidir por una u otra tecnología, sino aprovechar lo mejor de ambas.

http://javaconcafeina.blogspot.mx/2013/04/jsf-22-en-java-ee-7-integracio...

Saludos

INSERTAR DATOS CON IBATIS

hola todos, espero me puedan ayudar con una duda que tengo sobre como hacer una insercion con Ibatis,
tengo la siguiente lista que quiero insertar:

  HashMap<String, Object> parametros;

 for(int i=0;i<listaKardex_Resumen.size();i++)
  {
    List<Kardex> listaKardex = listaKardex_Resumen.get(i);
    parametros = new HashMap<String, Object>();

     for (Kardex mikardex : listaKardex) {
       parametros.put("IDPRODUCTO", mikardex.getId_Producto());
       parametros.put("DESCRIPCION", mikardex.getDescripProducto());
     }

   parametros.put("paramList", listaKardex);
   getSqlMapClient().insert("COSTO_INSERTAKARDEX", parametros);

 }

            try {
                        getSqlMapClient().commitTransaction();
                        resul = true;
                } catch (SQLException e) {             
                        log.info("ERROR AL HACER COMMIT :" + e.getMessage());
                }

y tengo mi sqlmap de Ibatis:

   <parameterMap class="map" id="PAR-KARDEX">
     <parameter property="IDPRODUCTO" javaType="String" jdbcType="VARCHAR"
                        mode="IN" />
     <parameter property="DESCRIPCION" javaType="String"
                        jdbcType="VARCHAR" mode="IN" />
  </parameterMap>

Web Services en Axis2 con Spring y Gradle

Recientemente en un proyecto un cliente nos dijo que la interfaz entre nuestros sistemas sería... esperen... sí... un web service. Un web service que ellos invocarían y que por lo tanto nosotros tenemos que implementar. Así que nos dieron un par de archivos WSDL y unos ejemplos de XML para asegurarnos que salga como debe ser (no entiendo para qué, si todas las herramientas de generación de web services se encargan de que el XML siempre salga como debe ser, ¿verdad?).

Cuando tengo que invocar un web service, generalmente uso Axis2. Me ha resultado de lo más sencillo porque consiste simplemente en ejecutar el script wsdl2java dándole el URI del WSDL y con eso tengo una clase que puedo usar para invocar los servicios (junto con mil clases internas que envuelven los datos dentro de envoltorios intermedios porque parece que los de Axis entendieron OOP como Onion-Oriented Programming). Así que en esta ocasión decidí probar el otro lado de la implementación: publicar un servicio hecho con Axis2.

Distribuir contenido