miércoles, 26 de marzo de 2008

8 SIIS - Zend Framework

Del 12 al 15 de marzo se organizó en la ciudad de Tacna el "8vo Seminario Internacional de Informática y Sistemas" cuyo objetivo fue contribuir en la formación de los estudiantes y profesionales en el área de Informática, Sistemas y ramas afines, a través de la experiencia, el intercambio de ideas y los conocimientos que aportarán investigadores y docentes de reconocido prestigio en el ámbito nacional e internacional.

Tuve la oportunidad de participar en este Seminario con el tema: "Zend Framework, Desarrollo de aplicaciones MVC con PHP". Aquí les dejo las diapositivas para su interes:



También pueden ver todas la diapositivas del seminario en http://www.slideshare.net/siis/

AjaxRain: mas de 1000 scripts ajax

AjaxRain es uno de los portales más grandes de almacenamiento de código javascript y componentes Ajax organizados según los kits de desarrollo a los que pertenecen. AjaxRain provee una invaluable cantidad de poderosos recursos para el desarrollo de interfaces Web, trabajando con los kits mas populares: jquery, dojo toolkit, yahoo, scriptacolous, prototype, lightbox, extjs, etc.

Un sitio muy importante para todo desarrollador web.

portal http://www.ajaxrain.com

lunes, 10 de marzo de 2008

uncaught exception: Permiso denegado al llamar al método XMLHttpRequest.open

uncaught exception: Permiso denegado al llamar al método XMLHttpRequest.open es uno de los errores que ocurre al querer acceder a una página fuera de nuestro dominio, mediante el objeto XMLHttpRequest. Este error ocurre en el navegador Mozilla Firefox, que por cuestiones de seguridad bloquea el acceso a objetos de distintos dominios. Para solucionar este problema es necesario añadir algunas líneas a nuestro archivo de configuración de Mozilla Firefox (user.js), el cual se encuentra en la carpeta:

$HOME/.mozilla/firefox/x* (Linux)
%AppData%\Mozilla\Firefox\Profiles (Windows)

Añadiendo estas líneas el problema se soluciona:

user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.open", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.sites", "http://localhost http://www.pagina1.com http://www.pagina2.com");
user_pref("capability.policy.XMLHttpRequestToAnySite.CDATASection.nodeValue", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.attributes", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.childNodes", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.firstChild", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.getAttribute", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.getElementsByTagName", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.lastChild", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.nodeName", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.nodeType", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.parentNode", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.tagName", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.nextSibling", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Element.previousSibling", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.HTMLCollection.length", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.HTMLCollection.item", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.attributes", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.childNodes", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.firstChild", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.getAttribute", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.getElementsByTagName", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.lastChild", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.nodeName", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.nodeType", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.parentNode", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.tagName", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.nextSibling", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.Text.previousSibling", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLDocument.documentElement", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLDocument.getElementsByTagName", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.channel", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.open", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.responseText", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.responseXML", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.send", "allAccess");
user_pref("capability.policy.XMLHttpRequestToAnySite.XMLHttpRequest.setRequestHeader", "allAccess");
user_pref("capability.policy.policynames", "XMLHttpRequestToAnySite");

En la sección
user_pref("capability.policy.XMLHttpRequestToAnySite.sites", "http://localhost http://www.pagina1.com http://www.pagina2.com");
añadimos los sitios web que queramos acceder con el objeto XMLHttpRequest (van separados de espacio cuando son mas de uno).

Luego en el explorador ponemos:
about:config
y buscamos el apartado: signed.applets.codebase_principal_support
al cual le asignamos el valor true.

Listo, solo falta reiniciar el firefox.

Configure Grafana and Slack

To configure Grafana to send alerts to Slack, you need to set up a notification channel in Grafana and configure it to use the Slack integra...