<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://dosideas.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=190.172.81.135</id>
		<title>Dos Ideas. - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="https://dosideas.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=190.172.81.135"/>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/Especial:Contribuciones/190.172.81.135"/>
		<updated>2026-06-09T19:28:34Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.28.2</generator>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Direcci%C3%B3n_IP_En_WebService&amp;diff=1033</id>
		<title>Dirección IP En WebService</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Direcci%C3%B3n_IP_En_WebService&amp;diff=1033"/>
				<updated>2008-09-14T23:53:00Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suele ser habitual realizar una auditoría sobre las invocaciones de nuestros webservices. &lt;br /&gt;
Además de la operación, fecha y hora, petición y respuesta, una de las cosas más interesantes a guardar es la dirección IP del cliente. Este dato quizás no es tan trivial de obtener, hay que hacer uso del objeto MessageContext asociado al mensaje recibido. &lt;br /&gt;
&lt;br /&gt;
Por lo que aquí os dejo el código:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
MessageContext msgCtx = MessageContext.getCurrentMessageContext();&lt;br /&gt;
String remoteAddress = (String)msgCtx.getProperty(&amp;quot;REMOTE_ADDR&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otras cosas interesantes que se pueden obtener son los objetos ServletContext y HttpServletRequest:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
ServletContext servletContext = (ServletContext)msgCtx.&lt;br /&gt;
    getProperty(&amp;quot;transport.http.servletContext&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
HttpServletRequest httpServletRequest = (HttpServletRequest)msgCtx.&lt;br /&gt;
    getProperty(&amp;quot;transport.http.servletRequest&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ver tambien===&lt;br /&gt;
[[Web Service]]&lt;br /&gt;
&lt;br /&gt;
[http://ws.apache.org/axis2/ Axis2]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Direcci%C3%B3n_IP_En_WebService&amp;diff=1032</id>
		<title>Dirección IP En WebService</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Direcci%C3%B3n_IP_En_WebService&amp;diff=1032"/>
				<updated>2008-09-14T23:51:18Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: Página nueva: Suele ser habitual realizar una auditoría sobre las invocaciones de nuestros webservices.  Además de la operación, fecha y hora, petición y respuesta, una de las cosas más intere...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suele ser habitual realizar una auditoría sobre las invocaciones de nuestros webservices. &lt;br /&gt;
Además de la operación, fecha y hora, petición y respuesta, una de las cosas más interesantes a guardar es la dirección IP del cliente. Este dato quizás no es tan trivial de obtener, hay que hacer uso del objeto MessageContext asociado al mensaje recibido. &lt;br /&gt;
&lt;br /&gt;
Por lo que aquí os dejo el código:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
MessageContext msgCtx = MessageContext.getCurrentMessageContext();&lt;br /&gt;
String remoteAddress = (String)msgCtx.getProperty(&amp;quot;REMOTE_ADDR&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Otras cosas interesantes que se pueden obtener son los objetos ServletContext y HttpServletRequest:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
ServletContext servletContext = (ServletContext)msgCtx.&lt;br /&gt;
    getProperty(&amp;quot;transport.http.servletContext&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
HttpServletRequest httpServletRequest = (HttpServletRequest)msgCtx.&lt;br /&gt;
    getProperty(&amp;quot;transport.http.servletRequest&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Web_Service&amp;diff=1031</id>
		<title>Web Service</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Web_Service&amp;diff=1031"/>
				<updated>2008-09-14T23:49:18Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Un servicio web (en inglés Web service) es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre cualquier plataforma, pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como Internet. La interoperabilidad se consigue mediante la adopción de estándares abiertos.&lt;br /&gt;
&lt;br /&gt;
==Ver también==&lt;br /&gt;
* [[WSDL]]&lt;br /&gt;
* [[Web Service Con Spring]]&lt;br /&gt;
* [[Clientes De Web Service]]&lt;br /&gt;
* [[Parámetros Para Web Service]]&lt;br /&gt;
* [[Invocar Web Service Desde Eclipse]]&lt;br /&gt;
* [[StackTrace Dentro De AxisFault]]&lt;br /&gt;
* [[Dirección IP En WebService]]&lt;br /&gt;
* [[SoapUI]]&lt;br /&gt;
* [http://es.wikipedia.org/wiki/Web_service Web Service en la Wikipedia]&lt;br /&gt;
* [http://ws.apache.org/axis2/ Axis2]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Web_Service&amp;diff=1030</id>
		<title>Web Service</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Web_Service&amp;diff=1030"/>
				<updated>2008-09-14T23:47:23Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Un servicio web (en inglés Web service) es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre cualquier plataforma, pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como Internet. La interoperabilidad se consigue mediante la adopción de estándares abiertos.&lt;br /&gt;
&lt;br /&gt;
==Ver también==&lt;br /&gt;
* [[WSDL]]&lt;br /&gt;
* [[Web Service Con Spring]]&lt;br /&gt;
* [[Clientes De Web Service]]&lt;br /&gt;
* [[Parámetros Para Web Service]]&lt;br /&gt;
* [[Invocar Web Service Desde Eclipse]]&lt;br /&gt;
* [[StackTrace Dentro De AxisFault]]&lt;br /&gt;
* [[SoapUI]]&lt;br /&gt;
* [http://es.wikipedia.org/wiki/Web_service Web Service en la Wikipedia]&lt;br /&gt;
* [http://ws.apache.org/axis2/ Axis2]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1029</id>
		<title>Invocar Web Service Desde Eclipse</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1029"/>
				<updated>2008-09-14T23:47:03Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Existe una herramienta para eclipse que podemos usar para que nos ayude con los [[Web Service]].&lt;br /&gt;
&lt;br /&gt;
La herramienta es [http://www.eclipse.org/webtools/initial-contribution/IBM/evalGuides/WebServicesToolsEval.html Web Service Explorer] y permite invocar servicios web de una forma visual y relativamente sencilla desde nuestro eclipse.&lt;br /&gt;
&lt;br /&gt;
Para usarlo hay que tener instalada la [http://www.eclipse.org/webtools/ Web Tools Plataform] en tu eclipse (lo más cómodo es bajarse el all-in-one) y pulsar en la opción ''Run -&amp;gt; Launch the Web Services Explorer''.&lt;br /&gt;
&lt;br /&gt;
Lo siguiente será seleccionar el webservice a invocar, para ello podemos cargar su WSDL pulsando en el segundo botón de la derecha (WSDL Page) y luego en WSDL Main en Navigator.&lt;br /&gt;
A continuación debemos introducir la URL donde esté publicado el WSDL del servicio web y pulsar en ''Go''.&lt;br /&gt;
&lt;br /&gt;
Tras unos instantes, si todo va bien, se habrá generado un cliente para el webservice y podrás ver sus operaciones y sus endpoints. Estos últimos son editables.&lt;br /&gt;
&lt;br /&gt;
A partir de aquí es tan sencillo como seleccionar una operación y rellenar los datos necesarios para invocar al servicio web. Las peticiones y respuestas se pueden ver tanto en el interfaz gráfico ''(modo Form)'' como en XML ''(modo Source)''.&lt;br /&gt;
&lt;br /&gt;
Como punto negativo decir que a veces el interfaz gráfico no se genera correctamente con mensajes muy complejos y además no es que sea muy intuitivo. Aunque no lo parezca, si haces doble-click sobre los títulos de los paneles se maximizan.&lt;br /&gt;
&lt;br /&gt;
===Ver también===&lt;br /&gt;
[[Web Service]]&lt;br /&gt;
&lt;br /&gt;
[[Eclipse]]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1028</id>
		<title>Parámetros Para Web Service</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1028"/>
				<updated>2008-09-14T23:46:32Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Practicamente cualquier aplicación medio seria necesita usar parametros de configuración. Un webservice no iba a ser diferente.&lt;br /&gt;
&lt;br /&gt;
Alternativas hay para todos los gustos o más bien para todas las necesidades, desde crear un fichero properties para ese par de parametros de configuración a uno xml para configuraciones algo más estructuradas. Incluso se ha llegado a ver usar el fichero properties-service.xml de JBoss. Una mala práctica que no aconsejamos, mejor el properties o xml empaquetado dentro de la aplicación y evitamos ataduras innecesarias.&lt;br /&gt;
&lt;br /&gt;
En el caso de desarrollar un webservice con Axis2, el propio Axis2 nos ofrece otra alternativa: el fichero ''services.xml'' del propio webservice.&lt;br /&gt;
&lt;br /&gt;
Veamos un ejemplo de cómo almacenar parametros de configuración simples y complejos dentro del fichero ''services.xml'':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;service name=&amp;quot;elWebserviceDeDosIdeas&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;description&amp;gt;Webservice de DosIdeas&amp;lt;/description&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;ServiceClass&amp;quot;&amp;gt;DosIdeas.ServiceClass&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroSimple&amp;quot;&amp;gt;UnValorSimple&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroComplejo&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mailconfig&amp;gt;&lt;br /&gt;
       &amp;lt;username&amp;gt;DosIdeas&amp;lt;/username&amp;gt;&lt;br /&gt;
       &amp;lt;password&amp;gt;clave&amp;lt;/password&amp;gt;&lt;br /&gt;
       &amp;lt;host&amp;gt;http://mail.dominio.com&amp;lt;/host&amp;gt;&lt;br /&gt;
    &amp;lt;/mailconfig&amp;gt;&lt;br /&gt;
 &amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;operation name=&amp;quot;operacion&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/operation&amp;gt;&lt;br /&gt;
&amp;lt;/service&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y ahora para obtenerlos hay que hacer uso de la clase MessageContext, obtener el contexto actual y usar el método getParameter teniendo en cuenta que estamos recuperando objetos de tipo OMElement. Un código para el ejemplo anterior seria el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
MessageContext msgContext = MessageContext.getCurrentMessageContext();&lt;br /&gt;
Parameter parametroSimple = msgContext.getParameter(&amp;quot;UnParametroSimple&amp;quot;);&lt;br /&gt;
Parameter parametroComplejo = msgContext.getParameter(&amp;quot;UnParametroComplejo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
System.out.println(&amp;quot;Parametro Simple &amp;quot; + parametroSimple.getParameterElement().getText());&lt;br /&gt;
System.out.println(&amp;quot;ParametroComplejo &amp;quot; + parametroComplejo.getParameterElement());&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ver también===&lt;br /&gt;
[[Web Service]]&lt;br /&gt;
&lt;br /&gt;
[http://ws.apache.org/axis2/ Axis2]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=StackTrace_Dentro_De_AxisFault&amp;diff=1027</id>
		<title>StackTrace Dentro De AxisFault</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=StackTrace_Dentro_De_AxisFault&amp;diff=1027"/>
				<updated>2008-09-14T23:45:55Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver tambien */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Una cosa que siempre es muy molesta es que los AxisFault no incluyen la información relativa al stacktrace de la excepción que los generó. Esto puede llegar a ser muy molesto, especialmente durante las pruebas de integración donde no sueles disponer de acceso directo a los ficheros de log. Afortunadamente en [http://ws.apache.org/axis2/ Axis2] existe una solución muy sencilla.&lt;br /&gt;
&lt;br /&gt;
Para incluir dentro de un AxisFault el stacktrace de la exception que lo generó, basta con cambiar estos dos parámetros del fichero de configuración de Axis2 ''(conf/axis2.xml)'' de false a true:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;sendStacktraceDetailsWithFaults&amp;quot;&amp;gt;false&amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;DrillDownToRootCauseForFaultReason&amp;quot;&amp;gt;false&amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y a continuación, reiniciar y redesplegar el Axis2.&lt;br /&gt;
&lt;br /&gt;
===Ver tambien===&lt;br /&gt;
[[Web Service]]&lt;br /&gt;
&lt;br /&gt;
[http://ws.apache.org/axis2/ Axis2]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=StackTrace_Dentro_De_AxisFault&amp;diff=1026</id>
		<title>StackTrace Dentro De AxisFault</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=StackTrace_Dentro_De_AxisFault&amp;diff=1026"/>
				<updated>2008-09-14T23:45:36Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: Página nueva: Una cosa que siempre es muy molesta es que los AxisFault no incluyen la información relativa al stacktrace de la excepción que los generó. Esto puede llegar a ser muy molesto, espe...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Una cosa que siempre es muy molesta es que los AxisFault no incluyen la información relativa al stacktrace de la excepción que los generó. Esto puede llegar a ser muy molesto, especialmente durante las pruebas de integración donde no sueles disponer de acceso directo a los ficheros de log. Afortunadamente en [http://ws.apache.org/axis2/ Axis2] existe una solución muy sencilla.&lt;br /&gt;
&lt;br /&gt;
Para incluir dentro de un AxisFault el stacktrace de la exception que lo generó, basta con cambiar estos dos parámetros del fichero de configuración de Axis2 ''(conf/axis2.xml)'' de false a true:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;sendStacktraceDetailsWithFaults&amp;quot;&amp;gt;false&amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;DrillDownToRootCauseForFaultReason&amp;quot;&amp;gt;false&amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y a continuación, reiniciar y redesplegar el Axis2.&lt;br /&gt;
&lt;br /&gt;
===Ver tambien===&lt;br /&gt;
[[Web Service]]&lt;br /&gt;
[http://ws.apache.org/axis2/ Axis2]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1025</id>
		<title>Invocar Web Service Desde Eclipse</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1025"/>
				<updated>2008-09-14T23:41:40Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Existe una herramienta para eclipse que podemos usar para que nos ayude con los [[Web Service]].&lt;br /&gt;
&lt;br /&gt;
La herramienta es [http://www.eclipse.org/webtools/initial-contribution/IBM/evalGuides/WebServicesToolsEval.html Web Service Explorer] y permite invocar servicios web de una forma visual y relativamente sencilla desde nuestro eclipse.&lt;br /&gt;
&lt;br /&gt;
Para usarlo hay que tener instalada la [http://www.eclipse.org/webtools/ Web Tools Plataform] en tu eclipse (lo más cómodo es bajarse el all-in-one) y pulsar en la opción ''Run -&amp;gt; Launch the Web Services Explorer''.&lt;br /&gt;
&lt;br /&gt;
Lo siguiente será seleccionar el webservice a invocar, para ello podemos cargar su WSDL pulsando en el segundo botón de la derecha (WSDL Page) y luego en WSDL Main en Navigator.&lt;br /&gt;
A continuación debemos introducir la URL donde esté publicado el WSDL del servicio web y pulsar en ''Go''.&lt;br /&gt;
&lt;br /&gt;
Tras unos instantes, si todo va bien, se habrá generado un cliente para el webservice y podrás ver sus operaciones y sus endpoints. Estos últimos son editables.&lt;br /&gt;
&lt;br /&gt;
A partir de aquí es tan sencillo como seleccionar una operación y rellenar los datos necesarios para invocar al servicio web. Las peticiones y respuestas se pueden ver tanto en el interfaz gráfico ''(modo Form)'' como en XML ''(modo Source)''.&lt;br /&gt;
&lt;br /&gt;
Como punto negativo decir que a veces el interfaz gráfico no se genera correctamente con mensajes muy complejos y además no es que sea muy intuitivo. Aunque no lo parezca, si haces doble-click sobre los títulos de los paneles se maximizan.&lt;br /&gt;
&lt;br /&gt;
===Ver también===&lt;br /&gt;
[[Web Service]]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1024</id>
		<title>Parámetros Para Web Service</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1024"/>
				<updated>2008-09-14T23:41:09Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Practicamente cualquier aplicación medio seria necesita usar parametros de configuración. Un webservice no iba a ser diferente.&lt;br /&gt;
&lt;br /&gt;
Alternativas hay para todos los gustos o más bien para todas las necesidades, desde crear un fichero properties para ese par de parametros de configuración a uno xml para configuraciones algo más estructuradas. Incluso se ha llegado a ver usar el fichero properties-service.xml de JBoss. Una mala práctica que no aconsejamos, mejor el properties o xml empaquetado dentro de la aplicación y evitamos ataduras innecesarias.&lt;br /&gt;
&lt;br /&gt;
En el caso de desarrollar un webservice con Axis2, el propio Axis2 nos ofrece otra alternativa: el fichero ''services.xml'' del propio webservice.&lt;br /&gt;
&lt;br /&gt;
Veamos un ejemplo de cómo almacenar parametros de configuración simples y complejos dentro del fichero ''services.xml'':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;service name=&amp;quot;elWebserviceDeDosIdeas&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;description&amp;gt;Webservice de DosIdeas&amp;lt;/description&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;ServiceClass&amp;quot;&amp;gt;DosIdeas.ServiceClass&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroSimple&amp;quot;&amp;gt;UnValorSimple&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroComplejo&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mailconfig&amp;gt;&lt;br /&gt;
       &amp;lt;username&amp;gt;DosIdeas&amp;lt;/username&amp;gt;&lt;br /&gt;
       &amp;lt;password&amp;gt;clave&amp;lt;/password&amp;gt;&lt;br /&gt;
       &amp;lt;host&amp;gt;http://mail.dominio.com&amp;lt;/host&amp;gt;&lt;br /&gt;
    &amp;lt;/mailconfig&amp;gt;&lt;br /&gt;
 &amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;operation name=&amp;quot;operacion&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/operation&amp;gt;&lt;br /&gt;
&amp;lt;/service&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y ahora para obtenerlos hay que hacer uso de la clase MessageContext, obtener el contexto actual y usar el método getParameter teniendo en cuenta que estamos recuperando objetos de tipo OMElement. Un código para el ejemplo anterior seria el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
MessageContext msgContext = MessageContext.getCurrentMessageContext();&lt;br /&gt;
Parameter parametroSimple = msgContext.getParameter(&amp;quot;UnParametroSimple&amp;quot;);&lt;br /&gt;
Parameter parametroComplejo = msgContext.getParameter(&amp;quot;UnParametroComplejo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
System.out.println(&amp;quot;Parametro Simple &amp;quot; + parametroSimple.getParameterElement().getText());&lt;br /&gt;
System.out.println(&amp;quot;ParametroComplejo &amp;quot; + parametroComplejo.getParameterElement());&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ver también===&lt;br /&gt;
[[Web Service]]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1023</id>
		<title>Parámetros Para Web Service</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1023"/>
				<updated>2008-09-14T23:40:55Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Practicamente cualquier aplicación medio seria necesita usar parametros de configuración. Un webservice no iba a ser diferente.&lt;br /&gt;
&lt;br /&gt;
Alternativas hay para todos los gustos o más bien para todas las necesidades, desde crear un fichero properties para ese par de parametros de configuración a uno xml para configuraciones algo más estructuradas. Incluso se ha llegado a ver usar el fichero properties-service.xml de JBoss. Una mala práctica que no aconsejamos, mejor el properties o xml empaquetado dentro de la aplicación y evitamos ataduras innecesarias.&lt;br /&gt;
&lt;br /&gt;
En el caso de desarrollar un webservice con Axis2, el propio Axis2 nos ofrece otra alternativa: el fichero ''services.xml'' del propio webservice.&lt;br /&gt;
&lt;br /&gt;
Veamos un ejemplo de cómo almacenar parametros de configuración simples y complejos dentro del fichero ''services.xml'':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;service name=&amp;quot;elWebserviceDeDosIdeas&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;description&amp;gt;Webservice de DosIdeas&amp;lt;/description&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;ServiceClass&amp;quot;&amp;gt;DosIdeas.ServiceClass&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroSimple&amp;quot;&amp;gt;UnValorSimple&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroComplejo&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mailconfig&amp;gt;&lt;br /&gt;
       &amp;lt;username&amp;gt;DosIdeas&amp;lt;/username&amp;gt;&lt;br /&gt;
       &amp;lt;password&amp;gt;clave&amp;lt;/password&amp;gt;&lt;br /&gt;
       &amp;lt;host&amp;gt;http://mail.dominio.com&amp;lt;/host&amp;gt;&lt;br /&gt;
    &amp;lt;/mailconfig&amp;gt;&lt;br /&gt;
 &amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;operation name=&amp;quot;operacion&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/operation&amp;gt;&lt;br /&gt;
&amp;lt;/service&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y ahora para obtenerlos hay que hacer uso de la clase MessageContext, obtener el contexto actual y usar el método getParameter teniendo en cuenta que estamos recuperando objetos de tipo OMElement. Un código para el ejemplo anterior seria el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
MessageContext msgContext = MessageContext.getCurrentMessageContext();&lt;br /&gt;
Parameter parametroSimple = msgContext.getParameter(&amp;quot;UnParametroSimple&amp;quot;);&lt;br /&gt;
Parameter parametroComplejo = msgContext.getParameter(&amp;quot;UnParametroComplejo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
System.out.println(&amp;quot;Parametro Simple &amp;quot; + parametroSimple.getParameterElement().getText());&lt;br /&gt;
System.out.println(&amp;quot;ParametroComplejo &amp;quot; + parametroComplejo.getParameterElement());&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ver también===&lt;br /&gt;
[Web Service]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1022</id>
		<title>Invocar Web Service Desde Eclipse</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1022"/>
				<updated>2008-09-14T23:39:59Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Existe una herramienta para eclipse que podemos usar para que nos ayude con los [[Web Service]].&lt;br /&gt;
&lt;br /&gt;
La herramienta es [http://www.eclipse.org/webtools/initial-contribution/IBM/evalGuides/WebServicesToolsEval.html Web Service Explorer] y permite invocar servicios web de una forma visual y relativamente sencilla desde nuestro eclipse.&lt;br /&gt;
&lt;br /&gt;
Para usarlo hay que tener instalada la [http://www.eclipse.org/webtools/ Web Tools Plataform] en tu eclipse (lo más cómodo es bajarse el all-in-one) y pulsar en la opción ''Run -&amp;gt; Launch the Web Services Explorer''.&lt;br /&gt;
&lt;br /&gt;
Lo siguiente será seleccionar el webservice a invocar, para ello podemos cargar su WSDL pulsando en el segundo botón de la derecha (WSDL Page) y luego en WSDL Main en Navigator.&lt;br /&gt;
A continuación debemos introducir la URL donde esté publicado el WSDL del servicio web y pulsar en ''Go''.&lt;br /&gt;
&lt;br /&gt;
Tras unos instantes, si todo va bien, se habrá generado un cliente para el webservice y podrás ver sus operaciones y sus endpoints. Estos últimos son editables.&lt;br /&gt;
&lt;br /&gt;
A partir de aquí es tan sencillo como seleccionar una operación y rellenar los datos necesarios para invocar al servicio web. Las peticiones y respuestas se pueden ver tanto en el interfaz gráfico ''(modo Form)'' como en XML ''(modo Source)''.&lt;br /&gt;
&lt;br /&gt;
Como punto negativo decir que a veces el interfaz gráfico no se genera correctamente con mensajes muy complejos y además no es que sea muy intuitivo. Aunque no lo parezca, si haces doble-click sobre los títulos de los paneles se maximizan.&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1021</id>
		<title>Invocar Web Service Desde Eclipse</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Invocar_Web_Service_Desde_Eclipse&amp;diff=1021"/>
				<updated>2008-09-14T23:39:18Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: Página nueva: Existe una herramienta para eclipse que podemos usar para que nos ayude con los Web Service.  La herramienta es [http://www.eclipse.org/webtools/initial-contribution/IBM/evalGuide...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Existe una herramienta para eclipse que podemos usar para que nos ayude con los [[Web Service]].&lt;br /&gt;
&lt;br /&gt;
La herramienta es [http://www.eclipse.org/webtools/initial-contribution/IBM/evalGuides/WebServicesToolsEval.html Web Service Explorer] y permite invocar servicios web de una forma visual y relativamente sencilla desde nuestro eclipse.&lt;br /&gt;
&lt;br /&gt;
Para usarlo hay que tener instalada la [http://www.eclipse.org/webtools/ Web Tools Plataform] en tu eclipse (lo más cómodo es bajarse el all-in-one) y pulsar en la opción ''Run -&amp;gt; Launch the Web Services Explorer''.&lt;br /&gt;
&lt;br /&gt;
Lo siguiente será seleccionar el webservice a invocar, para ello podemos cargar su WSDL pulsando en el segundo botón de la derecha (WSDL Page) y luego en WSDL Main en Navigator.&lt;br /&gt;
A continuación debemos introducir la URL donde esté publicado el WSDL del servicio web y pulsar en ''Go''.&lt;br /&gt;
&lt;br /&gt;
Tras unos instantes, si todo va bien, se habrá generado un cliente para el webservice y podrás ver sus operaciones y sus endpoints. Estos últimos son editables.&lt;br /&gt;
&lt;br /&gt;
A partir de aquí es tan sencillo como seleccionar una operación y rellenar los datos necesarios para invocar al servicio web. Las peticiones y respuestas se pueden ver tanto en el interfaz gráfico (modo Form) como en XML (modo Source).&lt;br /&gt;
&lt;br /&gt;
Como punto negativo decir que a veces el interfaz gráfico no se genera correctamente con mensajes muy complejos y además no es que sea muy intuitivo. Aunque no lo parezca, si haces doble-click sobre los títulos de los paneles se maximizan.&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1020</id>
		<title>Parámetros Para Web Service</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Par%C3%A1metros_Para_Web_Service&amp;diff=1020"/>
				<updated>2008-09-14T23:32:57Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: Página nueva: Practicamente cualquier aplicación medio seria necesita usar parametros de configuración. Un webservice no iba a ser diferente.  Alternativas hay para todos los gustos o más bien p...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Practicamente cualquier aplicación medio seria necesita usar parametros de configuración. Un webservice no iba a ser diferente.&lt;br /&gt;
&lt;br /&gt;
Alternativas hay para todos los gustos o más bien para todas las necesidades, desde crear un fichero properties para ese par de parametros de configuración a uno xml para configuraciones algo más estructuradas. Incluso se ha llegado a ver usar el fichero properties-service.xml de JBoss. Una mala práctica que no aconsejamos, mejor el properties o xml empaquetado dentro de la aplicación y evitamos ataduras innecesarias.&lt;br /&gt;
&lt;br /&gt;
En el caso de desarrollar un webservice con Axis2, el propio Axis2 nos ofrece otra alternativa: el fichero ''services.xml'' del propio webservice.&lt;br /&gt;
&lt;br /&gt;
Veamos un ejemplo de cómo almacenar parametros de configuración simples y complejos dentro del fichero ''services.xml'':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code xml&amp;gt;&lt;br /&gt;
&amp;lt;service name=&amp;quot;elWebserviceDeDosIdeas&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;description&amp;gt;Webservice de DosIdeas&amp;lt;/description&amp;gt;&lt;br /&gt;
&amp;lt;parameter name=&amp;quot;ServiceClass&amp;quot;&amp;gt;DosIdeas.ServiceClass&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroSimple&amp;quot;&amp;gt;UnValorSimple&amp;lt;/parameter&amp;gt;&lt;br /&gt;
 &amp;lt;parameter name=&amp;quot;UnParametroComplejo&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mailconfig&amp;gt;&lt;br /&gt;
       &amp;lt;username&amp;gt;DosIdeas&amp;lt;/username&amp;gt;&lt;br /&gt;
       &amp;lt;password&amp;gt;clave&amp;lt;/password&amp;gt;&lt;br /&gt;
       &amp;lt;host&amp;gt;http://mail.dominio.com&amp;lt;/host&amp;gt;&lt;br /&gt;
    &amp;lt;/mailconfig&amp;gt;&lt;br /&gt;
 &amp;lt;/parameter&amp;gt;&lt;br /&gt;
&amp;lt;operation name=&amp;quot;operacion&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/operation&amp;gt;&lt;br /&gt;
&amp;lt;/service&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y ahora para obtenerlos hay que hacer uso de la clase MessageContext, obtener el contexto actual y usar el método getParameter teniendo en cuenta que estamos recuperando objetos de tipo OMElement. Un código para el ejemplo anterior seria el siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code java&amp;gt;&lt;br /&gt;
MessageContext msgContext = MessageContext.getCurrentMessageContext();&lt;br /&gt;
Parameter parametroSimple = msgContext.getParameter(&amp;quot;UnParametroSimple&amp;quot;);&lt;br /&gt;
Parameter parametroComplejo = msgContext.getParameter(&amp;quot;UnParametroComplejo&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
System.out.println(&amp;quot;Parametro Simple &amp;quot; + parametroSimple.getParameterElement().getText());&lt;br /&gt;
System.out.println(&amp;quot;ParametroComplejo &amp;quot; + parametroComplejo.getParameterElement());&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Web_Service&amp;diff=1019</id>
		<title>Web Service</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Web_Service&amp;diff=1019"/>
				<updated>2008-09-14T23:24:56Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Un servicio web (en inglés Web service) es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre cualquier plataforma, pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como Internet. La interoperabilidad se consigue mediante la adopción de estándares abiertos.&lt;br /&gt;
&lt;br /&gt;
==Ver también==&lt;br /&gt;
* [[WSDL]]&lt;br /&gt;
* [[Web Service Con Spring]]&lt;br /&gt;
* [[Clientes De Web Service]]&lt;br /&gt;
* [[Parámetros Para Web Service]]&lt;br /&gt;
* [[Invocar Web Service Desde Eclipse]]&lt;br /&gt;
* [[StackTrace Dentro De AxisFault]]&lt;br /&gt;
* [[SoapUI]]&lt;br /&gt;
* [http://es.wikipedia.org/wiki/Web_service Web Service en la Wikipedia]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=JDBC&amp;diff=1018</id>
		<title>JDBC</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=JDBC&amp;diff=1018"/>
				<updated>2008-09-14T23:16:02Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: Página nueva: JDBC es una especificación de un conjunto de clases y métodos de operación que permiten a cualquier programa Java acceder a sistemas de bases de datos de forma homogénea. Lógicam...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;JDBC es una especificación de un conjunto de clases y métodos de operación que permiten a cualquier programa Java acceder a sistemas de bases de datos de forma homogénea. Lógicamente, al igual que ODBC, la aplicación de Java debe tener acceso a un driver JDBC adecuado. Este driver es el que implementa la funcionalidad de todas las clases de acceso a datos y proporciona la comunicación entre el API JDBC y la base de datos real.&lt;br /&gt;
&lt;br /&gt;
===Porque JDBC===&lt;br /&gt;
La necesidad de JDBC, a pesar de la existencia de ODBC, viene dada porque ODBC es un interfaz escrito en lenguaje C, que al no ser un lenguaje portable, haría que las aplicaciones Java también perdiesen la portabilidad. Y además, ODBC tiene el inconveniente de que se ha de instalar manualmente en cada máquina; al contrario que los drivers JDBC, que al estar escritos en Java son automáticamente instalables, portables y seguros.&lt;br /&gt;
&lt;br /&gt;
Toda la conectividad de bases de datos de Java se basa en sentencias SQL, por lo que se hace imprescindible un conocimiento adecuado de SQL para realizar cualquier clase de operación de bases de datos. Aunque, afortunadamente, casi todos los entornos de desarrollo Java ofrecen componentes visuales que proporcionan una funcionalidad suficientemente potente sin necesidad de que sea necesario utilizar SQL, aunque para usar directamente el JDK se haga imprescindible. La especificación JDBC requiere que cualquier driver JDBC sea compatible con al menos el nivel «de entrada» de ANSI SQL 92 (ANSI SQL 92 Entry Level). &lt;br /&gt;
&lt;br /&gt;
===Que driver usar===&lt;br /&gt;
Saber qué driver JDBC instalar en tu servidor de aplicaciones no debe tomarse a la ligera.&lt;br /&gt;
&lt;br /&gt;
En las grandes organizaciones es bastante habitual encontrarse con Oracles 9 y 10, cuyas inversiones aún están amortizándose. &lt;br /&gt;
A la hora de definir el entorno de desarrollo preguntas qué versión de Oracle y de Java usan bajo qué versiones de Oracle y Java debe funcionar la aplicación, te bajas el driver JDBC thin adecuado para las versiones mínimas (si te lo pasan mucho mejor!) y ala, a trabajar. &lt;br /&gt;
&lt;br /&gt;
Ésta es la teoría. A la hora de ponerla en práctica, te vas a la página para descargar los drivers JDBC Oracle y te encuentras con que existe un enlace para cada cada gran versión de Oracle Database. La impresión que te llevas es que si tienes, pej un Oracle 9.2.0.6, tienes que seleccionar el enlace de Oracle 9.2.x drivers. Bueno, esto es correcto pero sólo en parte.&lt;br /&gt;
&lt;br /&gt;
Si consultamos la matriz de interoperabilid entre drivers y database veremos que todas las versiones de los drivers JDBC funcionan para todas las versiones de Database desde la versión 9.2.x. Para más información, en especial para versiones anteriores, se puede consultar la FAQ de JDBC.&lt;br /&gt;
Entonces, ¿por qué tanta versión?&lt;br /&gt;
Las diferencias entre las versiones del driver JDBC radican principalmente en las funcionalidades JDBC que implementan y en las versiones Java bajo las que funcionan.&lt;br /&gt;
&lt;br /&gt;
Así por ejemplo, la versión 11 del driver JDBC thin Oracle sólo está disponible para Java 5 y 6, si quieres usar auto-generated keys tendrás que usar una versión 10 o superior y si quieres tener soporte completo para tipos LOB (CLOBs y BLOBs) olvídate del classes12.jar.&lt;br /&gt;
&lt;br /&gt;
===Recomendación===&lt;br /&gt;
Lo más recomendable es utilizar la última versión del driver JDBC compatible con tu versión de Java.&lt;br /&gt;
&lt;br /&gt;
===Y en el ambiente productivo===&lt;br /&gt;
Hasta aquí la parte sencilla. Las sorpresas vendrán cuando tu aplicación pase de tu entorno controlado de desarrollo a uno de pruebas del cliente y empiecen a sucederse los expedientes X con tareas de acceso a la base de datos.&lt;br /&gt;
&lt;br /&gt;
Nuestro consejo es comprobar la versión del driver JDBC instalada en el servidor de pruebas. Si es una versión antediluviana seguramente ya tienes la causa. La solución es convencer al responsable de Sistemas del cliente de actualizar el driver JDBC pero esto será una dura prueba para tus habilidades de negociación... &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Ver tambien===&lt;br /&gt;
[http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte21/cap21-3.html Tipos de Drivers JDBC]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Scrum&amp;diff=1008</id>
		<title>Scrum</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Scrum&amp;diff=1008"/>
				<updated>2008-09-12T02:53:56Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Scrum]]&lt;br /&gt;
Scrum es una metodología para la gestión de proyectos. Es considerada una metodología ágil para el [[Desarrollo Agil De Software]], si bien Scrum puede ser aplicado para la administración de proyectos de prácticamente cualquier índole.&lt;br /&gt;
&lt;br /&gt;
Scrum es un proceso que incluye un conjunto de practicas y roles predefinidos. Los principales [[Roles De Scrum]] son el [[Scrum Master]] el cual se encarga de mantener los procesos y tareas de manera similar a un Project Manager; El [[Dueño Del Producto]] o Product Owner (tambien llamado &amp;quot;Hombre de Negocios&amp;quot;) quien representa a los interesados (stakeholders) y es parte de la compañía que solicita el producto; y los [[Miembros Del Equipo De Scrum]] que incluye a los desarrolladores. Es importante destacar que en la práctica se usan los nombres de origen ingles (Ejemplo: Project Manager, en vez de gerente de proyecto).&lt;br /&gt;
&lt;br /&gt;
Durante cada [[Sprint]] o iteración, un periodo de 2 a 4 semanas decidido por el equipo, el equipo crea un [[Incremento Del Producto]] de un prototipo del software utilizable. Es importante que el prototipo sea funcional, esto quiere decir que compile en primer medida.&lt;br /&gt;
&lt;br /&gt;
El conjunto de características que se suman en cada iteración provienen del [[Backlog Del Producto]] (o simplemente backlog), el cuales un conjunto de requerimientos de alto nivel que tienen que ser realizados ordenados por prioridad. Qué requerimientos se incluyen en el backlog se determina en la reunión de planificación de cada iteración. Durante esta reunión el Dueño del Producto le informa al equipo de los ítems en el backlog que quiere que sean completados.&lt;br /&gt;
&lt;br /&gt;
Durante la iteración, nadie esta habilitado a cambiar el backlog, lo que significa que los requerimientos están congelados para esa iteración. Hay muchas buenas implementaciones de sistemas para asistir a un desarrollo de Scrum. Otros prefieren simplemente una pizarra y anotaciones en un &amp;quot;memo&amp;quot;. Una de las principales ventajas del método Scrum es que es muy fácil de aprender y requiere un mínimo esfuerzo para empezar a utilizarlo.&lt;br /&gt;
&lt;br /&gt;
==Valores==&lt;br /&gt;
Scrum es una metodología muy simple en su composición, sin embargo sus fundamentos teóricos y los valores en los que se fundamentan tienen implicaciones que van más allá de la simplicidad de sus componentes. Scrum se basa en la ''sinceridad'', ''transparencia'' y ''compromiso'' de las personas para llevar adelante el proyecto. &lt;br /&gt;
&lt;br /&gt;
Los valores de Scrum y del manifiesto ágil son el &amp;quot;pegamento&amp;quot; que une a las personas en las reuniones y a través de los documentos y les permite cumplir con sus compromisos día a día, sprint a sprint hasta el éxito del proyecto.&lt;br /&gt;
*'''Compromiso''': Estar dispuesto para comprometerse a una meta. La metodología la da a las personas la autoridad que necesitan para cumplir con sus compromisos.&lt;br /&gt;
*'''Enfoque''': Haz tu trabajo. Enfoca todos tus esfuerzos y habilidades para trabajar en lo que te comprometiste a hacer. No te preocupes por nada más. Alguien lo hara por ti.&lt;br /&gt;
*'''Apertura / honestidad''': Scrum mantiene todo acerca del proyecto visible a todos.&lt;br /&gt;
*'''Respeto''': Los individuos estamos formados por nuestros orígenes y nuestras experiencias. Es importante respetar las diferentes a las personas del equipo y sus formas de pensar.&lt;br /&gt;
*'''Coraje''': Tener el coraje para comprometerse, actuar, ser honesto y esperar respeto.&lt;br /&gt;
&lt;br /&gt;
==Scrum para el desarrollo de software==&lt;br /&gt;
Scrum nada dice sobre cómo llevar adelante una iteración. Es por esto que Scrum se complementa perfectamente con [[Extreme Programming]] y [[Test Driven Development]], práctias que suelen usarse en conjunto a Scrum para llevar adelante un [[Desarrollo Agil De Software]].&lt;br /&gt;
&lt;br /&gt;
==Ver también==&lt;br /&gt;
* [http://cursos.dosideas.com/course/view.php?id=6 Curso Día a día con Scrum]&lt;br /&gt;
* [[Proceso De Desarrollo Con Scrum]]&lt;br /&gt;
* [[Herramientas Para Planificacion Colaborativa]]&lt;br /&gt;
* [[Metodologia Agil En Una Organizacion En Cascada]]&lt;br /&gt;
* [[Interrupciones En Scrum]]&lt;br /&gt;
* [http://es.wikipedia.org/wiki/Scrum Scrum en la Wikipedia]&lt;br /&gt;
* [http://www.navegapolis.net/content/view/694/61/ Flexibilidad con Scrum (libro gratuito)]&lt;br /&gt;
* [http://www.navegapolis.net/content/view/816/61/files/scrum_manager_gestion_de_proyectos.pdf Gestión de Proyectos (libro gratuito)]&lt;br /&gt;
* [http://www.infoq.com/minibooks/scrum-xp-from-the-trenches Scrum and XP from the trenches (libro gratuito en inglés)]&lt;br /&gt;
* [http://geeks.ms/blogs/jorge/archive/2007/05/09/explicando-scrum-a-mi-abuela.aspx Explicando Scrum a mi abuela]&lt;br /&gt;
* [http://www.chuidiang.com/ood/metodologia/scrum.php Breve explicación de Scrum]&lt;br /&gt;
* [http://www.offshoreagile.com/resources/presentations/rootsofscrum/ Video conferencia The Roots of Scrum]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	<entry>
		<id>https://dosideas.com/wiki/index.php?title=Scrum&amp;diff=1007</id>
		<title>Scrum</title>
		<link rel="alternate" type="text/html" href="https://dosideas.com/wiki/index.php?title=Scrum&amp;diff=1007"/>
				<updated>2008-09-12T02:53:27Z</updated>
		
		<summary type="html">&lt;p&gt;190.172.81.135: /* Ver también */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Scrum]]&lt;br /&gt;
Scrum es una metodología para la gestión de proyectos. Es considerada una metodología ágil para el [[Desarrollo Agil De Software]], si bien Scrum puede ser aplicado para la administración de proyectos de prácticamente cualquier índole.&lt;br /&gt;
&lt;br /&gt;
Scrum es un proceso que incluye un conjunto de practicas y roles predefinidos. Los principales [[Roles De Scrum]] son el [[Scrum Master]] el cual se encarga de mantener los procesos y tareas de manera similar a un Project Manager; El [[Dueño Del Producto]] o Product Owner (tambien llamado &amp;quot;Hombre de Negocios&amp;quot;) quien representa a los interesados (stakeholders) y es parte de la compañía que solicita el producto; y los [[Miembros Del Equipo De Scrum]] que incluye a los desarrolladores. Es importante destacar que en la práctica se usan los nombres de origen ingles (Ejemplo: Project Manager, en vez de gerente de proyecto).&lt;br /&gt;
&lt;br /&gt;
Durante cada [[Sprint]] o iteración, un periodo de 2 a 4 semanas decidido por el equipo, el equipo crea un [[Incremento Del Producto]] de un prototipo del software utilizable. Es importante que el prototipo sea funcional, esto quiere decir que compile en primer medida.&lt;br /&gt;
&lt;br /&gt;
El conjunto de características que se suman en cada iteración provienen del [[Backlog Del Producto]] (o simplemente backlog), el cuales un conjunto de requerimientos de alto nivel que tienen que ser realizados ordenados por prioridad. Qué requerimientos se incluyen en el backlog se determina en la reunión de planificación de cada iteración. Durante esta reunión el Dueño del Producto le informa al equipo de los ítems en el backlog que quiere que sean completados.&lt;br /&gt;
&lt;br /&gt;
Durante la iteración, nadie esta habilitado a cambiar el backlog, lo que significa que los requerimientos están congelados para esa iteración. Hay muchas buenas implementaciones de sistemas para asistir a un desarrollo de Scrum. Otros prefieren simplemente una pizarra y anotaciones en un &amp;quot;memo&amp;quot;. Una de las principales ventajas del método Scrum es que es muy fácil de aprender y requiere un mínimo esfuerzo para empezar a utilizarlo.&lt;br /&gt;
&lt;br /&gt;
==Valores==&lt;br /&gt;
Scrum es una metodología muy simple en su composición, sin embargo sus fundamentos teóricos y los valores en los que se fundamentan tienen implicaciones que van más allá de la simplicidad de sus componentes. Scrum se basa en la ''sinceridad'', ''transparencia'' y ''compromiso'' de las personas para llevar adelante el proyecto. &lt;br /&gt;
&lt;br /&gt;
Los valores de Scrum y del manifiesto ágil son el &amp;quot;pegamento&amp;quot; que une a las personas en las reuniones y a través de los documentos y les permite cumplir con sus compromisos día a día, sprint a sprint hasta el éxito del proyecto.&lt;br /&gt;
*'''Compromiso''': Estar dispuesto para comprometerse a una meta. La metodología la da a las personas la autoridad que necesitan para cumplir con sus compromisos.&lt;br /&gt;
*'''Enfoque''': Haz tu trabajo. Enfoca todos tus esfuerzos y habilidades para trabajar en lo que te comprometiste a hacer. No te preocupes por nada más. Alguien lo hara por ti.&lt;br /&gt;
*'''Apertura / honestidad''': Scrum mantiene todo acerca del proyecto visible a todos.&lt;br /&gt;
*'''Respeto''': Los individuos estamos formados por nuestros orígenes y nuestras experiencias. Es importante respetar las diferentes a las personas del equipo y sus formas de pensar.&lt;br /&gt;
*'''Coraje''': Tener el coraje para comprometerse, actuar, ser honesto y esperar respeto.&lt;br /&gt;
&lt;br /&gt;
==Scrum para el desarrollo de software==&lt;br /&gt;
Scrum nada dice sobre cómo llevar adelante una iteración. Es por esto que Scrum se complementa perfectamente con [[Extreme Programming]] y [[Test Driven Development]], práctias que suelen usarse en conjunto a Scrum para llevar adelante un [[Desarrollo Agil De Software]].&lt;br /&gt;
&lt;br /&gt;
==Ver también==&lt;br /&gt;
* [http://cursos.dosideas.com/course/view.php?id=6 Curso Día a día con Scrum]&lt;br /&gt;
* [[Proceso De Desarrollo Con Scrum]]&lt;br /&gt;
* [[Herramientas Para Planificacion Colaborativa]]&lt;br /&gt;
* [[Metodologia Agil En Una Organizacion En Cascada]]&lt;br /&gt;
* [[Interrupciones En Scrum]]&lt;br /&gt;
* [http://es.wikipedia.org/wiki/Scrum Scrum en la Wikipedia]&lt;br /&gt;
* [http://www.navegapolis.net/content/view/694/61/ Flexibilidad con Scrum (libro gratuito)]&lt;br /&gt;
* [http://www.navegapolis.net/content/view/816/61/files/scrum_manager_gestion_de_proyectos.pdf Gestión de Proyectos]&lt;br /&gt;
* [http://www.infoq.com/minibooks/scrum-xp-from-the-trenches Scrum and XP from the trenches (libro gratuito en inglés)]&lt;br /&gt;
* [http://geeks.ms/blogs/jorge/archive/2007/05/09/explicando-scrum-a-mi-abuela.aspx Explicando Scrum a mi abuela]&lt;br /&gt;
* [http://www.chuidiang.com/ood/metodologia/scrum.php Breve explicación de Scrum]&lt;br /&gt;
* [http://www.offshoreagile.com/resources/presentations/rootsofscrum/ Video conferencia The Roots of Scrum]&lt;/div&gt;</summary>
		<author><name>190.172.81.135</name></author>	</entry>

	</feed>