Así es la popularidad de los principales lenguages de programación en el 2009…

Programación, Software 27 de September del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Vía TIOBE

Position
Sep 2009
Position
Sep 2008
Delta in Position Programming Language Ratings
Sep 2009
Delta
Sep 2008
Status
1 1 Java 19.383% -1.33% A
2 2 C 16.861% +1.48% A
3 5 PHP 10.156% +0.91% A
4 3 C++ 9.988% -0.73% A
5 4 (Visual) Basic 9.196% -1.29% A
6 7 Perl 4.528% -0.31% A
7 8 C# 4.186% -0.15% A
8 6 Python 3.930% -1.08% A
9 9 JavaScript 2.995% -0.14% A
10 11 Ruby 2.377% -0.38% A
11 10 Delphi 1.972% -1.08% A
12 18 Pascal 0.961% +0.56% A
13 16 Lisp/Scheme 0.842% +0.42% A–
14 13 PL/SQL 0.819% +0.12% A
15 14 SAS 0.781% +0.14% A
16 24 ABAP 0.705% +0.42% A
17 12 D 0.588% -0.68% B
18 42 Objective-C 0.585% +0.48% B
19 17 Lua 0.507% +0.09% B
20 25 MATLAB 0.506% +0.25% B

Choose unique values for the ‘webAppRootKey’ context-param in your web.xml files! – with nested exception:

Java, Programación 4 de September del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Teníamos el siguiente error… eso pasa por que el servidor tiene dos aplicaciones y no tiene un identificador…. este error se soluciona agregando las siguientes lineas en el web.xml de las aplicaciones…

1
2
3
4
<context-param>
       <param-name>webAppRootKey</param-name>
       <param-value>id_unique</param-value>
 </context-param>

y apropósito:
n

n
¿Qué servidor de aplicaciones web utilizas?
View Results

Hibernate: como regresar un sólo valor que sea un tipo primitivo?

Base de datos, Java, Oracle, Programación 21 de August del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Es un poco básico pero la verdad es que es de gran ayuda, ya que si quieres regresar un date, string, long, etc. (datso primitivos) pues evitas mapear el resultado dentro de un objeto.

bueno, al grano!!! vamos a obtener el nombre del autor dependiendo del su ID

tautor.hbm.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
 
<hibernate-mapping>
<sql-query name="searchAutor">
	    <return-scalar  column="name" type="java.lang.String" />
    	<!-- La columna que se quiera regresar y su tipo de dato-->
    	 SELECT 
    	 	name  
    	 FROM 
    	 	tautor 
 
	  WHERE
		idautor = :id
    </sql-query>
</hibernate-mapping>

ya que tenemos el mapeo… vamos a la implementación

HTautorDao.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public class HTautorDao extends AbstractDAO implements TautorDao
{
public String getNameAutor(Long id)
    {
        try
        {
 
            String[] paramNames =
                { "id" };
 
            Object[] values =
                { id };
          // nos regresa el tipo primitivo que queramos o con metodos que tiene DataAccessUtils
            return (String) DataAccessUtils.uniqueResult((getHibernateTemplate()
                    .findByNamedQueryAndNamedParam("searchAutor", paramNames, values)));
 
        }
        catch (Exception e)
        {
            log.fatal(e);
            return null;
        }
 
    }

así pueden tener las consultas utilizando hibernate… y regresar tipos primitivos como los antes mencionados..

NOTA: siempre y cuando sea sólo valor como resultado, por que de lo contrario estamos ablando de otra forma de hacerlo.

java doc: http://static.springsource.org/spring/docs/2.0.x/api/org/springframework/dao/support/DataAccessUtils.html#uniqueResult

MAVEN: Wagon protocol ‘ftp’ doesn’t support directory copying

Java, Maven, Programación 5 de August del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

No sabía por que me marcaba error con na versión más nueva, y púes estaba probando varias versiones,
hasta que navegando por Internet encontré la solución…

Error que me marcaba MAVEN:

1
[exec] [INFO] Wagon protocol 'ftp' doesn't support directory copying

y sólo hay que agregar la siguiente instrucción en el build del POM

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<build>
.
.
.
  <extensions>
       <extension>
          <groupId>org.apache.maven.wagon</groupId>
          <artifactId>wagon-ftp</artifactId>
          <version>1.0-beta-3</version>
       </extension>
   </extensions>
 
.
.
.
</build>

y así ya no marca el anterior error…

Otra manera de crear un Profile en Maven…

Maven, Programación 21 de July del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Otra manera de crear perfiles “profile” en Maven, es crear un archivo profiles.xml y colocar la siguiente estructura:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<profiles>
	<profile>
		<id>devel</id>
		<activation>
			<property>
				<name>development</name>
				<value>dev</value>
			</property>
			<activeByDefault>true</activeByDefault>
		</activation>
		<properties>
			<config.folder>development/*</config.folder>
		</properties>
	</profile>
	 <profile>
		<id>staging</id>
		<activation>
			<property>
				<name>staging</name>
				<value>stag/**</value>
			</property>
		</activation>
		<properties>
			<config.folder>staging/**</config.folder>
		</properties>
	</profile>
	<profile>
		<id>production</id>
		<activation>
			<property>
				<name>development</name>
				<value>prod</value>
			</property>
		</activation>
		<properties>
			<config.folder>production/**</config.folder>
		</properties>
	</profile>
</profiles>

Cómo ejecutar Maven desde una tarea en ANT???

Maven, Programación 3 de July del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Para ejecutar los comandos de Maven desde una tarea echa en ANT se tendría que hacer de la siguiente manera…

1
2
3
4
5
6
7
8
9
 <target name="package" description="create ...">
   <exec executable="mvn.bat">
     <arg value="install" />
      <!-- si es que tienes profiles -->
     <arg value="-Ddevelopment=dev" />
      <!-- Si quieres omitir los test -->
     <arg value="-Dmaven.test.skip=true" />
   </exec>
 </target

claro que hay que tener encuenta que se tiene declarada la variable, ósea agregarla al Path del S.O.

Cómo ejecutar un PL desde el SQL windows on Oracle????

Base de datos, Oracle, Programación 24 de June del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Ya por último, para probar el PL que hemos creado anteriormente lo podemos ejecutar de la siguiente manera:

1
  execute BOOKSDEL_PKG.delete_book(1); // 1 es el id

Cómo crear un PL en oracle y que este dentro de Packages ???…

Oracle, Programación 24 de June del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

Si queremos crear un PL que se encuentre dentro de Packages sólo hay que crearlo de la siguiente manera:

1.- como nombre tendrá “BOOKSDEL_PKG“…

1
2
3
4
5
CREATE OR REPLACE package BOOKSDEL_PKG AS
 
  PROCEDURE  delete_book(IDBOOK NUMBER);
 
end BOOKSDEL_PKG;

2.- y creamos el PL de la siguiente forma (body):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
CREATE OR REPLACE PACKAGE BODY booksdel_pkg
AS
   PROCEDURE delete_book (idbook NUMBER)
   IS
      CURSOR bk
      IS
         ..
 
   BEGIN
   	.
	.
	.	  
      COMMIT;
   EXCEPTION
     .
     .
     .
   END delete_book;
END booksdel_pkg;

y eso sería todo lo que se tiene que hacer!!!

Ejecutar un PL en Oracle desde Java y que muestre una posible exception para que la aplicación no continué…

Java, Oracle, Programación 2 de June del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, average: 4.50 out of 5)
Loading ... Loading ...

Si quieres manejar la excepción de un posible error y que la maneje Java.. solo hay que agregar la siguiente linea “RAISE_APPLICATION_ERROR” y además Oracle nos permite personal izar nuestros errores…

CREATE OR REPLACE PACKAGE BODY delete_pkg
AS
   PROCEDURE delete_table (vbook NUMBER)
   IS
     .
     .
     .
   BEGIN
     .
     .
     .
     .
     COMMIT;
   EXCEPTION
      WHEN OTHERS
      THEN
         DBMS_OUTPUT.put_line (SQLERR);
	 RAISE_APPLICATION_ERROR(-20001,SQLERR);
   END delete_table;
END delete_pkg;

internet explorer no acepta tipo de objetos de javascript que terminen con un coma “,”…

Ajax, Internet, Programación 29 de May del 2009

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading ... Loading ...

al crear un tipo de objeto javascript como por ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
 var ajaxLogin = {
         content: {"login":dojo.byId("login").value},
         url: "UR_SEND",
         handleAs: "text",
         load: function(response){
		 responseNode.innerHTML = response;
	  },
	 error: function(response){
	     	  responseNode.innerHTML = "error";
	 },
	 timeout: 10000,
   };

Donde el el ultimo atributo “timeout” termina con una “,”… en firefox funciona muy bien pero en Internet Explorer se tiene que quitar como por ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
 var ajaxLogin = {
         content: {"login":dojo.byId("login").value},
         url: "UR_SEND",
         handleAs: "text",
         load: function(response){
		 responseNode.innerHTML = response;
	  },
	 error: function(response){
	     	  responseNode.innerHTML = "error";
	 },
	 timeout: 10000
   };

listo… ya no marca un error el “navegador”…

http://www.wikio.es BlogESfera - Directorio de Blogs Hispanos blogarama - the blog directory Mi Ping en TotalPing.com
Internet blogs Programming Blogs - Blog Catalog Blog Directory Internet blogs Buzzear (ES) Publicidad por tu blog con Boosterblog directorio de blogs
Agregar Web - Directorio de webs Directorio webs Directorio Web
Anuncios Gratis Blog Directory Technology Blogs - Blog Rankings