Alfonso Marín López

Blog personal de un programador

16 January, 2012
by admin
0 comments

Manual de desobediencia a la ley Sinde

Bueno, comienza el cacochondeo. Mientras que en el mundo las leyes de propiedad intelectual parece que empiezan a cambiar en función de lo que los ciudadanos demandan a sus gobiernos, aqui en España… no.
Asi que os dejo un manual, que esta por todo internet, de como evitar la censura de la ley Sinde.

Una pena que en estos tiempos, tengamos unos gobiernos que insistan en no escuchar a los que de verdad manadan, los ciudadanos.

manual_desobediencia

14 January, 2012
by admin
1 Comment

Tuneando Tomcat y Java

Resulta curioso lo de la memoria en java, nunca había tenido problema con ella, y sigo sin tenerlos. Lo único que he tenido ha sido un problema que parecia que era de memoria con una aplicación para un cliente. Al final ha resultado ser una tontería que no ha implicado ningún problema.

Pero la situación me ha hecho investigar un poco sobre el asunto de la memoria y como optimizar Tomcat para producción. Hasta ahora si tenia un problema de memoria, solo la incrementaba y se solucionaba el problema. No se si por que mis requerimientos siempre han sido de andar por casa (nunca he tenido una aplicación con tantos usuarios como Facebook, ya quisiera), o por que siempre he desarrollado las aplicaciones siguiendo una arquitectura estandar y aplicando patrones y tecnologías actualizadas. Pero nunca he tenido problemas.

He descubierto un par de paginas interesantes para aprender las bases de la gestión de la memoria en java. Una es de David Bonilla, una persona a la que sigo desde hace tiempo, artículo.

Esta otra página trata de que hacer cuando tienes un problema y como tratar de solucionarlo. Yo lo he hecho y resulta un poco complicado, supongo que sera práctica.

Y por último una página con pasos claros de como mejorar el rendimiento de nuestro Tomcat. Algunas muy elementales, como gestionar los log con alguna librería y nunca con System.out. Y otras que desconocía completamente como la opción -server.

Un post corto pero cargado de información. Cualquier sugerencia siempre sera bien recibida.

 

2 January, 2012
by admin
3 Comments

GWT + spring + maven

Llevo tiempo queriendo hacer una integración un poco mas limpia entre spring y gwt, y de paso empezar a usar maven de forma completa. Navegando por internet no he encontrado mucha información sobre esta complicada unión. Incluso en Google hay una pequeña pagina donde explica a grandes rasgos una posible integración. Pero no ha sido hasta hace poco que no he dado con alguien que explicara de forma clara como hacerlo.

La dirección de los tutoriales es esta http://krams915.blogspot.com/search/label/GWT, una web que interesante . Si estáis interesados, seguir los tutoriales.

Yo solo añadiré algunas aclaraciones, porque aunque esta bastante claro hay cosas que no me han funcionado.

M2eclipse

Este plugin me ha dado muchos problemas, hasta que me he dado cuenta de que era el y lo he erradicado por completo. Vamos a ver, no es que sea malo o no funcione, es que en mi caso particular me ha hecho muchos extraños. Para empezar, en un proyecto maven las librerías no están en el proyecto, si no que están en el repositorio local, con lo que el eclipse en algunas ocasiones se puede hacer un lío.  Solucionable copiando dichos archivos a la carpeta de la web. Aunque claro, ya empezamos con piados a mano de librerías. Y no importa que las tengas en el classpath, algunas no las coge, no me preguntéis por que.

Y lo mas raro de todo, los controller de spring-mvc no los cargaba, aunque si me cargaba los beans de spring security. Curiosamente las dos clases controlador que hace mención en el tutorial de arriba, no las cargaba, y claro, no encontraba las paginas. Después de muchas comprobaciones, y de ver que utilizando el maven a pelo para ponerlo en marcha si que funcionaba, llegue a esta conclusión.

Y el autor ha debido tener los mismos problemas porque utiliza la declaración de los beans de gwt por el xml, y comenta que hay algún tipo de conflicto con las anotaciones y gwt. Pero puedo confirmar que los servicios de gwt se pueden configurar por anotaciones sin ningún problema.

Así que para evitar problemas, recomiendo utilizar maven como siempre, pero a la hora de ponerlo en eclipse, utilizar mvn eclipse:eclipse, que eso no falla y podréis manejar el proyecto sin problemas, depurar y ejecutar con el plugin de google.

Plugin de google

En este caso solo una aclaración, que ademas la tenéis en la página del mojo, la web donde esta el archetype de gwt, y es que tenéis que mover el archivo de configuración de gwt, modulo.gwt.xml, desde la carpeta de fuentes resources, /src/main/resources, a la carpeta de fuentes java, /src/main/java. Para que el plugin lo reconozca y no tenga problema en ejecutarlo.

gwt-widget

Esta librería te la una implementación sencilla de la solución que propuso google. No tiene ningún problema y funciona muy bien. El inconveniente, que lleva tiempo parada y no se si continuara, aunque por el momento a mi me sirve.

También hay que tener en cuenta que no esta en repositorios maven, con lo que hay que bajárselo e instalarlo en el repositorio local para que funcione bien con maven. Un ejemplo:

mvn install:install-file -DgroupId=org.gwtwidget -DartifactId=gwtwidget -Dversion=1.0 -Dpackaging=jar -Dfile=/path/to/file

Luego la incluis en vuestro pom tal que así:

		<dependency>
			<groupId>gwt.widget</groupId>
			<artifactId>gwtwidget</artifactId>
			<version>1.0</version>
		</dependency>

Poco mas puede aportar, me ha llevado algún tiempo sacar estas conclusiones pero en el fondo es sencillo.

Queda pendiente un post de como utilizar spring security para aplicar seguridad a una aplicación gwt. Ahora que tengo esto montado y funcionando no me llevara mucho tiempo.

10 May, 2011
by admin
2 Comments

Desarrollo de aplicaciones en Facebook

 

Nuevo proyecto, y como siempre interesante.

Ya hace tiempo que llevaba dandole vueltas a un proyecto algo mas personal que comercial. Con tanto darle vueltas al final me he decantado por realizarlo, ahora que tengo un poco mas de tiempo (no mucho claro). Del proyecto ya hablare mas adelante, por el momento hablare de la tecnología que voy a emplear.

Sera una aplicación en Facebook. No tenia ni idea de como funcionaba y me pareció interesante. Así que voy a ir poniendo mis primeras impresiones.

  • Facebook no aloja las aplicaciones, si no que te crea como una pagina en su dominio, con su mismo formato y funcionalidades, salvo que hay un área que llaman canvas donde se carga tu aplicación en un iFrame.
  • Tu aplicación la debes montar por tu cuenta, o en un servidor o en un hosting compartido o como quieras, pero es cosa tuya.
  • El lenguaje, el que quieras, java, c, php, flash, etc… por que la comunicación se realiza por llamadas a los servicios de Facebook con rest.
  • Desde la aplicación tenemos acceso a toda la api de facebook, datos de usuarios, relaciones, notificaciones, noticias, etc…. con lo que puede ser muy bueno para expandirse entre los millones de usuarios que tiene, es muy viral.

La verdad es que me ha costado muchisimo dar  de alta la aplicación en facebook, sobre todo porque el único mensaje que me decía era que había un problema interno y que lo volviera a intentar. Pasados unos días por fin me dijo algo mas, que tenia que verificar mi cuenta, o por teléfono o por numero de tarjeta. Evidentemente me fui a la opción del teléfono, pero entre los cientos de paises que había, no estaba España, curioso no?

Total, que me toca meter la tarjeta y así poder continuar, por fin me dan de alta la aplicación y comenzamos el desarrollo a medida de la aplicación.

Términos a tener en cuenta:

  • Site URL y site domain: nada que explicar salvo que en site url debe acabar con /, que es un poco quisquilloso con eso.
  • Canvas URL: aqui es la dirección donde almacenaras tu aplicación, ejemplo.com/app, es interesante ponerla en una carpeta que no sea la principal, así podrás gestionarla mejor.
  • Securo Canvas URL: cuando el usuarios esta configurado para acceder por https al facebook, tu deberás proveer tu aplicación también con esta modalidad. Te vale la misma si lo tienes configurado para el mismo sitio en http y https. En cuanto al certificado, no importa que no sea firmado y reconocido por una entidad certificadora, con uno autofirmado sirve, facebook lo enmascara luego con el suyo propio.
  • Pages tabs: no se muy bien donde esta esto o donde aparece, ya os iré contando.

Y por el momento es todo, ahora solo falta desarrollar la aplicación, desplegarla en un servidor y ya se podrá utilizar desde Facebook, SENCILLISIMO!!!

    29 April, 2011
    by admin
    4 Comments

    Spring Security, swing y un servidor de aplicaciones

    Hacia tiempo que no escribía un post técnico y ya ha llegado el momento. Recientemente, desarrollando una aplicación a medida para un cliente, me he visto en la necesidad de conectar una aplicación de escritorio con una aplicación web. En los años que llevo programando no he tenido necesidad de realizar esta operativa, muchas veces ha sido conectar una aplicación web con otras aplicaciones, tanto web, servidores de diferentes tipos como de escritorio, pero han sido siempre desde la perspectiva de la lógica de negocio en el servidor, consumiendo servicios web, accediendo a base de datos o incluso leyendo archivos. Esto es distinto, tengo que ofrecer acceso a mi aplicación web para aplicaciones de escritorio. Nada complicado si se utilizan webservices. Pero he aprovechado la coyuntura para probar unas nuevas herramientas, spring roo, que genera de forma espectacular una aplicación web y al que ya dedicare un post con mas tranquilidad. Por el momento decir que genera aplicaciones con JPA en Hiberanate (mas bien en cualquier cosa) y spring para el negocio. Ademas de hacer un scaffold de las web con GWT. Para la seguridad puedes incluir spring security, que es lo que yo he introducido. Hasta aquí todo bien, funciona perfectamente y sin ningún problema, puedes controlar el acceso por métodos de negocio con simples tag, muy fácil. Ahora viene la parte en que conectamos la aplicación de escritorio, en mi caso con una aplicación swing (por cierto con netbeans y matisse, muy sencillo también). Spring te ofrece un montón de opciones de interconexión, RMI directamente y de forma sencilla, HTTP-Invoke o webservices, entre muchos. He probado RMI y muy contento, pero al final me he decantado por HTTP-invoke por varios motivos:

    • RMI necesita configurarse ademas un puerto concreto, complicando la instalación en según que sitios. Si el servidor y la red son tuyos no hay muchos problemas, pero si utilizas algo como la PAAS de google puedes tener algunos problemas. En cambio HTTP-Invoke usa el mismo puerto 80.

    • Rendimiento: Tanto RMI como HTTP-Invoke tienen muy buenos rendimientos, ambos usan serialización de objetos.

    • Configuración, al ir por el puerto 80 no requiere configuración extra de seguridad.

    El problema lo tuve en la seguridad, como configurar la seguridad y realizar un login remoto, que es lo que voy a explicar aquí.

    Servidor

    Para configurar el lado del servidor hay que realizar los siguientes pasos:

     

    • Crear una capa de servicios: para ello creamos unas clases en nuestro código que ofrecerá los servicios que nos interesen.

    public interface ServicioSaludo {

    @Secured(“ROLE_ADMIN”)

    public String getSaludo();

    }

    @Service(“saludador”)

    public class ServicioSaludoImpl implements ServicioSaludo {

    @Override

    public String getSaludo() {

    return “Hola”;

    }

    }

    Es en la interfaz donde declaramos la seguridad con los tags @Secured. Luego pondré la configuración básica de seguridad.

    El tag @Service le indica a spring que es un bean y que debe nombrarlo como saludador, de esta manera no hará falta ponerlo expresamente en el xml de configuración. Claro que para que funcione debéis configurar vuestro spring con el siguiente código.

    <context:component-scan base-package=”paquete”>

    Si no, simplemente lo declaráis expresamente como un bean

    <bean name=”saludador” class=”paquete.ServicioSaludoImpl”/>

    Ya tenemos el servicio declarado, ahora lo exponemos con HTTP-Invoker.

    <bean name=”/saludadorHTTP” class=”org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter”>

    <property name=”service” ref=”saludador”/>

    <property name=”serviceInterface” value=”paquete.ServicioSaludo”/>

    </bean>

    /saludadorHTTP indica donde estará accesible, después ponemos con que lo exponemos, e indicamos las clases que queremos exponer.

    Aquí tenéis el archivo de configuración de seguridad.

    <?xml version=”1.0″ encoding=”UTF-8″?>
    <beans:beans xmlns=”http://www.springframework.org/schema/security”

    xmlns:beans=”http://www.springframework.org/schema/beans”

    xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”

    xsi:schemaLocation=”http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd

    http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd”>

    <http auto-config=”true” use-expressions=”true”>

    <intercept-url pattern=”/login.*” access=”permitAll”/>

    <intercept-url pattern=”/**” access=”isAuthenticated()” />

    <form-login/>

    <anonymous />

    <http-basic />

    </http>

    <global-method-security secured-annotations=”enabled”/>

    <!– Configure Authentication mechanism –>

    <authentication-manager alias=”authenticationManager”>

    <authentication-provider>

    <user-service>

    <user name=”admin” password=”admin” authorities=”ROLE_ADMIN”/>

    </user-service>

    </authentication-provider>

    </authentication-manager>

    </beans:beans>

    use-expressions sirve para utilizar las nuevas forma de definir las seguridad, bastante mas completas.

    Global-method-security sirve para poder utilizar las anotaciones de seguridad en las interfaces que hemos usado antes.

    En cuanto a lo demás, es básico en seguridad de spring, así que no haré mas comentarios.

    Ahora cargamos otro dispacher de spring en el web.xml, se pueden tener todos los que se quieran, y es recomendable separarlo, si tenéis uno para el MVC de spring, podéis dejarlo intacto y añadir este otro solo para las conexiones remotas.

    <servlet>

    <servlet-name>remoting</servlet-name>

    <servlet-class>

    org.springframework.web.servlet.DispatcherServlet

    </servlet-class>

    <init-param>

    <param-name>contextConfigLocation</param-name>

    <param-value>/WEB-INF/spring/remoting-servlet.xml</param-value>

    </init-param>

    <load-on-startup>2</load-on-startup>

    </servlet>

    <servlet-mapping>

    <servlet-name>remoting</servlet-name>

    <url-pattern>/remoting/*</url-pattern>

    </servlet-mapping>

    Varias cosas, para los que no lo sepan, el contextConfigLocation no es necesario, siempre y cuando llaméis al archivo con la nomenclatura servletName-servlet.xml y ubicado en WEB-INF/classes. Si lo queréis en otro sitio y con otro nombre pues se pone.

    Aquí nos quedamos con la URI /remoting, que se usara en el cliente. Con esto ya tendremos configurado el servidor.

    Cliente

    Le toca al cliente, en este caso utilizare una simple aplicación de consola. Necesitaremos varias cosas:

    • Las interfaces del servidor: podemos empaquetar solo las interfaces del servidor y añadirlas nuestro proyecto cliente.
    • Las librerias de spring: tanto el core como security.

    Ahora configuramos nuestra aplicación creando un archivo de configuración cliente para spring, por ejemplo cliente.xml, e introducimos lo siguiente:

    <bean id=”servicio”>

    <property name=”serviceUrl” value=”http://localhost/remoting/saludadorHTTP”/>

    <property name=”serviceInterface” value=”paquete.ServicioSaludo”/>

    <property name=”httpInvokerRequestExecutor”>

    <ref bean=”httpInvokerRequestExecutor”/>

    </property>

    </bean>

    <bean id=”httpInvokerRequestExecutor”     class=”org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor”/>

    La dirección del servicio donde lo tengáis, en mi caso en localhost, seguido de remoting que es donde mapeamos el servlet para servicios remotos y por último la dirección del servicio concreto que configuramos en el archivo xml de spring del servidor. Ademas cargamos el bean para que lo use de autenticado.

    Y nos vamos al main de la clase cliente.

    //Creamos una autenticación con el usuario y contraseña

    Authentication request = new UsernamePasswordAuthenticationToken(“admin”, “admin”);

    //Este es el contexto que extiende del servidor, es aqui donde nos logeamos

    SecurityContextHolder.getContext().setAuthentication(request);

    //Cargamos el archivo de configuración

    ClassPathXmlApplicationContext contexto = new ClassPathXmlApplicationContext(“cliente.xml”);

     

    ServicioSaludador servicio = (ServicioSaludador) contexto.getBean(“servicio”);

    String cadena = servicio.getSaludo();

    Y ya esta, facilísimo.

    Bueno, quien dice un main dice una aplicación swing, es la mar de sencillo, yo por el momento uso netbeans que funciona muy bien.

    otwiischial bursitis imagesboxer cushing's diseaseinternational sms bomberhow to calculate the slant height of a pyramiddeciduous forest amphibians1999 yamaha r1 steering damperпевец гуфwalther ppq m1 17 round magazineoldsmobile f 85 jetfirenamaskar yoga colombiainfolanka news comshanklin places to eatfrank hematochezianappanee churchesazael carreraasma khan uncgsl softball rulescrystal beach pier san diegocyprinakathryn erbe stalkerdebemus latindestiny earth warsat locationdrivenow berlin kartesemovente da 105 25remington armory 1917 serial numbersben and jerry's political donationsmasonry antonymsainsburys chairmanunicellular prokaryotes that live in extreme environmentsunambagoddess pursued by heraspezifischer widerstand rechnerpima county divorce documentspandora charms goldsmithsfender stratocaster tex mex jimmie vaughancosmos motors ugandaedna gundersenayahuasca componentssomatropin drug classfinacle 10 trainingnismo gtr34imm abbreviation medicalwho won the partner marcus lemoniswoodland centers pomeroy ohiokakinada population 2017dangers of radon in basementcrystal beach pier san diegonawabshah temperaturepictures of derek jeter's housefrank sinatra count basie live at the sandssangeet natak akademi award 2015eve landry conjointhov lanes in southern californiacisco ccsp certification pathveravoleticia buhlercirco ringling brothers preciosremington model 788 6mm for saleroopa patel tarot card readerhumane society of missouri euthanasiatanger outlet mall ottawadugout 2 staten islandgriffon bruxellois puppies ukkanwar caste in indiawilkes barre scranton penguins scoreust kut airportdecriminalization of cannabis in australiadr leong wai yewpatterson starter alternatorcurtido recipe el salvadorfarajan spainrtu reapdifferent types of tambola gamesirvine outback steakhousealeurites moluccana seed oilfn scar 308 magazines for salehagler and associates salaryhigh jingo art pepperwater bottle bandolieroutright accounting software reviewgastroenterologo especialista en colondiablo 3 ultimate evil edition charactersrowing pictogram2004 kia amanti starting problemsvaping and diarrheasamurai champloo artistic anarchydavid meyler injuryazael carreraethereum nákupdecaduro bodybuildingsig p238 accuracy testdelta baggage limit for international flightspercentage of world population killed in ww1stasia balablackmores b cescape salon orem utahparuthiveeran movie onlineis cypress a hardwood or softwoodchrysler sebring front end noiseque es hemolisismechanical stopwatch ukeda scrabblemarlboro gold pack 100'smagic slim and the teardrops tour datessig p250 compact for salemarlboro tobacco pouchraccoon scent glandsforest drive keston parkshit creek paddleibibio culture and traditionortho cyclen pillskehormatan dibalik kerudungimplicit egotism effectkns classicaljudith neilson bioacademy early learning jefferson gascience it works bitches xkcdm4a1 with m203 grenade launchersaniat rmelmartika i feel the earth move official videojose altuve foundationruger sr9 30 round magazineautomo llcs&w 9mm shield owners manualminecraft mumble modmeaning of amithgiorgio armani myergondola ride whistler pricethe oarsman menupatent foramen ovale with atrial septal aneurysmadvance auto parts university blvd jacksonville flkennametal india ltd bangalore contact detailsentiti appe34 535i manual transmissionchevy caprice 6.0hcg tumor marker normal rangemaggi roti maker ukvod ex dividend date 2017acetaminophen 325 butalbital caffeinesunat bayi perempuan umur berapacrail balcomie golf course scotlanddcs group banburydarkspore free download full version pcnfpa 1901 rescue equipment listpembroke pines commissionersdespre mine compunereflexa hexagonlyme regis walking routesking egbert on vikingsilluminati intro secret worldraccoon scent glandsdecahydrate sodium sulfateak 47 foregrip removalmamita rica apretaditaheth hebrewdulux paint advertarrowhead plant syngonium podophyllumfire emblem owain swordrodney mullins obituarykana nishino sukihonda civic 1.5 lsi turbo kitrafter slope calculatorremington ranch pooltadao ando boxingshit creek paddleseawolves swimmingcbd oil side effects webmdsunat bayi perempuan umur berapaspinrite external drivetiss undergraduate coursesspongebob squarepants battle for bikini bottom gameboyderry eagles soccer nhcanvas highline schoolselmwood shopping center clearview pkwynocturne in c# minoreasthampton ma mayor racethe story of keesh wikipediashonda rhimes adoptionkay reindlws badcock corporation mulberryhired girl schlitzvalparai resorts pollachi tamil naduryefordrugrats go wild scratch and snifftu mujhe kabool lyricsdefine shoulder subluxationpatriots postgame press conference livemarasmius androsaceusgoddess pursued by heraarya vaidya sala coimbatore contactred cap yellow stem mushroombeyblade samurai pegasischief cook and bottle washer the rinkwest indian hot pepper sauce scovillenavy seals killing talibanatomic blonde movie spoileradam first wife lilith in the biblebatman imaginext batcave reviewamerican ninja the confrontationsdl trados studio 2015 downloadfrank bruno boxing academy5 bromouracil mutationinuvik weather historyaccountants castlebarpokemon x luigi tcg boxsamurai shodown vi ps2dakgoot pvcryan conner md dothan alhackintosh power mac g5carol burnett elephant skitfannie lou hamer speech videoseedless bongsjack purvis trumpetdillon companies inc king soopersaudi 200 turbo quattro 20v occasionjibjab bush kerry this landlower columbia red devilsgundi recipecoem microsofteölfortunato depero artworkwinchester model 270 disassemblyrcss torontoencyclopedia of the romantic era 1760 1850garden state plaza fireworks 2015dutdutan tattoobeyblade samurai pegasismarijuana breeding mendelshoeme canada websitewww worldbank org prospects migrationandremittancesbill musgrave wikithrough the wormhole is gun crime a virusapache wingsuitincisional biopsy melanomaform function form button stud bandgaoshanliushuitemeku movie theater temecula californiawapato high school basketballcarey landry hail mary gentle womanscribblenauts walkthrough world 3curfew shawn christensenskunk ape callgreve mohawkepee blade lengthprophet gregory vossglobal sector services flowood msferry tenerife la gomera armasarvind rajaramanparable of the farmer sowing seedsdeadmau5 united we failkangal bite force2017 mfj tax bracketsphenethyl alcohol safetydays in new york by shiv k kumar summaryr89 pornerikson's theory identity vs role confusiondarkinfinity netcoxsackie treatment babiespréambule de la constitution de 1946 pdftoronto rimowahumberto soto boxerrabies virus microbiologyallergic reaction to leech bitelisa's booby traplastilowhat is a discretionary gift trust101xp rudechen yeshiwinchester model 70 7mm valuejesuit missions of the guaranis argentinacurfew shawn christensenremington model 770 270 reviewswhat is a navel gazerjim heistandfinal destination alternate deathsагат русская книгаremington 870 wingmaster slug barreldwarf moringa seedsbantumenepia brasiliabugsy malone mcboxing news mikey garciastela 29 tikaldevguru copeyote teepee1001 van nuys road new castle in 47362فیلم لج و لجبازیadenoid glands swollenاحمد وفيق وزوجتهamerican sniper book citationperlla 2017urban airship mobile walletkawasaki csr 1000 specsdark sky reserve lake tekapogorillaz in the mist ice cubesharon united methodist church lewisville ncמתחת לאף לצפייה ישירהotl headphone amplifiersalton sea volcano 2016when disagreeing with a premise course herogreat falls tribune obituaries montanaduty free galleria hawaiidallas earthquakes caused by frackingcomo he podido vivir sin ti merenguearma 2 operation arrowhead demomak's kitcheniron mountain paper shredding servicesbarnard castle antiques centreasesinos seriales famosos del mundohackintosh power mac g5battlespire pckir kharakamai dns resolutionpaul carney neurosurgeongummibär party popquvenzhané wallis mother and fathersig sauer p250 45 for salecomo he podido vivir sin ti merenguecorl knifedsaujlpt 2017 resultslil uzi vert 1.9eric zapata guitaristparotid gland lobesgoerzalleeitnaisuzuki samurai headlight conversionrosco 22 pistolkrang tmnt out of the shadowsberetta tomcat 32 reviewskeirsey personality test onlinemossberg 590 special purpose tactical shotgunmgk the gunnerjboss profiler tutorialethical sourcing definition businessaws elemental careersseagate central management webpagedavid smith qinetiqhotel moctezuma nogalesryerson public school hamiltondistal interphalangeal joint pain toespecial kitty litter ingredientsgangs of wasseypur 2 dialogueschartis insurance addresslymphogranuloma venereum testingroadies rising spoilerswhat is an autoloading shotgunmac moadpotato famine ireland 1900doa tawakal dan berserah dirilorex live video baby monitorwhen was damascus steel inventedkey and peele teacher skitmusica llanera instrumentalhritik roshan body building diettanah lot curseconvert 10z to gramsmarilyn monroe cal neva lodgebulk bullets for reloading canada6.5 grendel type 2 boltmeaning of leavening agentbcf polyester carpet fiberhannu kapanenslowdive dagger electricnicker poster color vs gouachem1873 revolversquamous cell carcinoma parotid gland icd 10egonetmr wint mr kidduscis applicant vs petitionerهللوياbig pun noreunited arab emirates five dirhamsdaggerfall screenshotsgoby fish and pistol shrimptarot reading london covent gardenohio boxing commissiondriving around song colt ford downloadbenjamin rush bloodlettingno se olvida franco de vita y soledadchateau petrus pomerol 1995epoxy terrazzo thicknessgold digger lyrics bohemia1994 honda xr100r partspopeye spree lunchkrak des chevaliers planomaha steaks free shipping coupon code 2015pavithra lokesh family photosmajdanek factsthe kill room jeffery deaverridder golf simulatorhattersley and sonssecond hand rinnai gas heatersmgk machine gun kelly invinciblejunction box gland platedrv hiv drugdutdutan tattooiowa legalize recreational weedmobile vet grants pass oregonjason sudeikis immigrantdebitkarte schweizamerican express celebrity endorsementsremington 700 sps varmint 308 winamazon echo intercom systemare brass knuckle belt buckles legalкоко до шанель смотреть онлайнair serv corporation louisville kygary francione veganjason patric geronimokepler second law of planetary motionfootprints resort bancroft onricin bean plantlexmark s315 reviewjani lane warrant deathdangers of propylene glycol in electronic cigarettesibriummuriatic acid for septic tankssabzarel guero castro twitterfender aerodyne strat hsshowa 1500 barrel lengthhilroy exercise book 80 pagesawm sniper for saledrayton hall elementary charleston scverdugo faultenfield poltergeist ed and lorrainenorway's per capita incomethornton beach crocodilesms access oledb connection stringdaggerfordglossolalia in the biblerevolving rifle 357how tqm can help in achieving targets of environmental managementoculus sdk 1.3define gyrocompassmarsh billings rockefeller housestirile kanal d numar telefoncisto significadowayne cobham akronaluminum and magnesium hydroxide simethiconeocotillo seeds for salemichael robertson gsadaawat rice reviewnylon waster sworddixie land oil co llcevelyn ryan jinglespyrrole electrophilic aromatic substitutionufc 121 undertakerportlandia title songdouble line funds careerskuldeep yadav wikie34 535i manual transmissionshigella dysenteriae causesdanny wallace assassin's creednitrox 36 dive tablelecrae waste my life lyricsstellaria media identificationpedro capo guerra de idolosurinary sphincter prosthesisclub 555 tanger moroccowhat is 45 degrees farenheit in celciusmammoth ivory cufflinkshikoreanperkele meaningkentucky wildcats recruiting class 2015wineries moravia czech republicdaytrana manufacturerdriftwood cursive lyricsdr perry passarotanger outlet mall ottawaskunk in the barnyard putitus el viajerolike gargoyles crosswordandrew chema mddynatrac bed framefn 5.7 pistol picturesdell xps m1210 drivers for windows 7download npp constitutionfrench huguenot surnames in germanycoconut creek high school magnet programhdhomerun remotecanna generalismcminnville news register archivessnus pronunciationmere sapno ke rajkumargoddess pursued by herabombardier challenger 604 interiorruger 416 rigby for salewabasha police departmentnumber of lines of symmetry in a trapeziumdelaware county spca no killthe lyceum diablo 3dell 7537 i7 specificationantifa is terrorist organizationpaolo nutini let me down easy mp3www pmaa orgaaj tak seedhi baat rahulasterix and the golden sickle full movieputnam co clerkbest whistle for gundog training9mm glasersambar deer riflesarroyo surname originnylon waster swordganymede marveluh 1d huey gunshipdisable windows smartscreen windows 8used sig p938 extreme for salealpa gun 187conjunctivitis bloody tearskeonjhar district blocksrosco 22 pistolwhere's waldo science fair projectpurple toadflax beesair serv corporation louisville kyhector berlioz les troyenspokemon crystal playthroughpadron electoral mexicoamerican heritage furniture morris ildisha vakani husband photo and nameyana kudryavtseva dietbasc interpretationmatokeo ya form four 2015sr22 4.5 threaded barrelmarriott mdprichard waddell dartmouthcreativedisccrédit agricole leasing & factoringitv4 channel frequencyavy kaufman emailwhat was harriet tubman's full nameparque de diversiones en washington dcmarin outdoor antique marketkeyssar the right to votele corbusier sofa lc2 verschiedene farberuger m77 223 stainlesskramnik lekomartika i feel the earth move official videohittite military oathcisco show sfp transceiveregonetjason patric geronimolake hartwell boat ramps opencisl 650 soldcemoi chocolatmorpeth sixth formdoes frozen coke have caffeineryobi expand it compatible with stihlmephedrone street pricemsnimsunat bayi perempuan umur berapalos niños de irena sendler pelicula completa en español latinowalther ppq m1 17 round magazinegenerate csr for ssl cert linuxmyrtle beach 5k july 2017donner lake traffichillbrow prostitutesu of south florida muma college of businessdaily life of a samurai in feudal japanmoondial helen cresswell pdfkirsch lorraine recipeddd type moondonner lake traffichalwa puri banane ka tarikademarini diablo batyellow mangrove scientific nameferc cip standardskwong's menudiablo 3 ultimate evil edition charactersatta chakki in englishbipolar lidelse og alkoholhow many digits is mtcn2001 brownlow medalfhl hockey standingsgame of thrones s07e06 ettvjim heistandchuando singaporebison skull masktotal bastard airlines david spadehp laptops with ubuntu preinstalleddublin to kos flight timetiss undergraduate coursesthe blodgett lighthouseserbuk penaiktubig sa baga gamotgreat pyrenees in florida heatjolly shekeenadu book storiesetobicoke year round alternative centreperica jukićhector berlioz les troyenshomonyms and homographs examplesm1a national match accuracyheavenly gates cemeteryred5 audio reviewdell latitude e4300 drivers windows 8miu miu penny loafer mary jane pumpskelly clarkson and steel pantherizhmash saiga 12 pricechef ramzi appprophet shemaiahmerton seeds of contemplationjames lyons bantryfritz baffourpearland parade 2015oxytetracycline for utihoka one hupana reviewwilton ct little leaguesobranie cocktail ukcrystal symphony current itinerarychemo drug rituxanglossolalia in the bibleafrikaans liedjies vir madarkspore free download full version pcvaffanculo translation italian englishtime blindness barkleykanwar caste in indiahp pavilion dv7 4060us specsdodge dart demon decalsderringer that killed lincolnzig zag wraps how to roll a blunthardball keanu reeves full movieali hassan mwinyi secondary schoolcrt tv repair coursefet blastocyst transfermystery tackle box january 2017otwiargia iodouglas bombergerreactive armor tilesübermenschen translationoverdiagnosis and overtreatment of prostate cancerhow to recover truecrypt passwordsmith and wesson m&p 15 fteku general studies degreesleeping draught potion recipepetron plus global incmetroid gunshipsasaco inc storedba 3 wargame rulesstephen romanowruger speed six sightsintegral hydraulik usajapan earthquake 1923 richter scalengôn ngữ pythondragon ball z buu fury gbakepler second law of planetary motioneasyjet flights to lisbon from gatwickhalwa puri banane ka tarikaclassic firearms virginia beachdaimon gardnercrank length measurementcarmelite conversationshp deskjet f2480 not printingsansa clip zip formatkemble piano valueppti comcrank length measurementfoxpro 2.6 for windows downloadadare flightsbeecher bible and rifle churchnazis captured by mossadfamily guy pawtucket pat episodebrazilian blowout is primarily comprised ofartikel daftar obat kimia farmatowkio ft chance the rappershining gundam figureillinois tollway oasis near mebrookpark fireworkstrains to palani from keralamossberg 590 metal trigger guarddr ross morrison independence mokawasaki csr 1000 specsaau basketball teams albany nysword scabbard chapetoddler weight percentile chartpetron plus global inchenry ford allegiance hematology oncologyis250 short shifterwas bedeutet sure im korangrapefruit terpenesnavigate to nearest cracker barrelmalachy mckennahow sharp are piranhas teethsig p210 airsoftarya vaidya sala coimbatore contactathenaeum pall mallare brass knuckles illegal in north carolinafsh muscular dystrophy painchris marketobenjamin rush bloodlettingmeckel's diverticulum ctomnifuel vs omnifuel iibältros flera gångerlucky tubb generationscuddington railway stationtee shot crossword clue32 winchester special cast bulletsdyson dc51 multi floor reviewdrayton hall elementary charleston sccruises leaving port canaveral december 2015openelec remote appهللوياhip upslipwilson's sandwich shopmetacritic bayonetta 2jayson regocrystal symphony current itinerarygingerdead man vs evil bong full moviehawks cay resort marathon floridamartinova nedelja 2017bacterial vs viral vs allergic conjunctivitissaguaro blossom scottsdaledeniz hasgülersar 3 ak 47 for saleseedlesmelinoe daughter of hadescolt 1911 exploded diagramnemo 33 freedivingcarey landry hail mary gentle womanwest hempstead weather hourlyhydrous aluminium silicatespanish olive tree arbequinastarhub sports packomark target rifle for salelatex presentation template beamer downloadblackmores b cchatter creek ciderventus 3 glideracai brazilian blowout reviewswide angle x ray diffraction waxdcopenhagen ihgunforgivable lifetime movie 2016babywise aap statementmarlo from rhoabrianna penrodhow to deal with emetophobiasig sauer tribalwordpad cchartis insurance addressedge z55jon coyne haircutdubai crude assaythiruvalluvar history in tamil languagecolt mustang 380 handgunliege shotgun valuesig p250 compact for salequalcomm stadium fireworksdriftwood moody blues youtubevoith paper fabrics india ltd share priceskittle bombs with smirnoffhalala marriage servicegundam wing altronwayne cobham akronwhat is an autoloading shotgunfrost bank send money featureek din achanak 2011hotel viktoria plzenfunderburks menuwegmans ocean twpachmed the dead terrorist sonspringfield m1a socom accuracypaul anka times of your life kodak commercialcanvas бизнес модельlaroyce hawkins girlfriendficus lyrata seedsdurbar hall kochicurtido recipe el salvadoreastbay wausau wi useddie duchin jrbc rich ironbird floyd rosekim wilson telephone bluescolt 45 beer alcohol contentwhere is don rickles burieddouble line funds careerscolt delta elite 10mm magazinesst mary's convent school ujjaincanvas highline schoolsgarry shandling johnny carsondr suhel ahmedhow to hold a two seam fastballzwillingspaargem mineral show denver coliseumpepco essosmith and wesson 327 trr8 357 magnumosprey talon 22 youtubeiphone data transfer software synciossports card junction pittsburgh patun dr mahathir contribution to malaysialord of the rings gates of argonathhow to make mephedrone crystalsattack on titan episode 18 english subhow to use httpwatch in firefoxminecraft griefer serveremirates a380 seat widthspace spinoffs inventionscheil malaysiafrancis bayliescruises leaving port canaveral december 2015price of smith and wesson sigma 9mm519 mcatgreg macalusosalonika greece holocaustjanina kirchbergeraz pharmacy technician trainee licenseantifa is terrorist organizationkopin corporationmaneka gandhi petachief cook and bottle washer the rinkjust cause 2 bullseye assault riflesig p228 reviewkalverstraat winkelsmak's kitchenfichier pdbcumsum official siteis alisan porter marriedamaudruzhonda 20 hp outboard fuel consumptionblood doping meaningsan ysidro california mapaclayton county bidscajun chef justin wilson gumbo recipepatrone meaninghussein chalayan laser dresshca stock tickerrobert conrad's assengelberg tourist attractionsbeyblade samurai pegasissanguinarios del m1snorting kratom extractimam khaleel mohammedsons of perdition trailerwarburg pincus beijinglindbergh elementary school lynwoodm21 airsoft guncolt delta elite 10mm magazinesletterfrack villageegon krenz 1989whiskey barrel bungno se olvida franco de vita y soledadg10 knucklesengland starting lineup 6 nationsdelhi university marksheet verification onlinetarff33 hysan avenue causeway bay hong kongcoursera image processingd23 incredibles 2 trailerlfaati amo lyrics umberto tozzithe battle of epping forest genesisjoy behar christmas cardwalther firearms recallglenarm festivalfeldgendarmerie uniformindian institute of architects iiaundertaker vs brock lesnar hell in a cell 2015 dailymotionindian fables panchatantralokmanya college of computer applicationssobibor locationias dowry ratepokemon art academy eshopchristopher marshburnmarijuana cigs marlbororevlon milk plus 6 face creameero saarinen st louis gateway archdoes smoking weed everyday affect youmega python gatoroidstand up waverunner for saleyagp san franciscosccy pistol reviewkeroro gunso cosplayroadies rising spoilerseverbank insurance departmentleber congenital amaurosis type 2volo volare latingoddess pursued by heraforest drive keston parkrandy rogers & william clark green acoustic december 15make mine freedom cartoon 194822 winchester magnum rimfire ballisticsoasi contributionhitler's henchmen goebbelshow to deal with emetophobiaruger takedown 17 hmrwilkes barre scranton penguins scorepoum flagdulhe raja akhiyon se goli maarerubik guns 357fcc report text spamhow to make a 3d helium atom modelhydroxyproline estimationrogaška crystalvapen clear penhow to cook peter luger bacondixie land oil co llcmoondial helen cresswell pdfwini puhbormioli glass jarsthe crown tavern clerkenwellquran pen troubleshootingintel coprocessor xeon phimiami drug kingpinswalney island airportwhalers freightlake murray boat raceswww rcsd k12 in usremington 1187 bolt assemblykiwisaver holidaydonna was a few blocks away when bombs explodedgiant omnium 2011evm perumbavoorpima county divorce documentsfixing magsafe power adaptertu mujhe kabool lyricswhat is asta powerprojectthe hexer tv series english911 gtr2mercedes benz modelo a200 urbanlongford ireland postcodeis odwalla healthy for youcongruent quadrilaterals definitionst ann's yonkersshahzad khan attorneyti amo lyrics umberto tozzivw vr6 headersdushevinais odwalla healthy for youapache wingsuitsecond hand rinnai gas heatersfocks locksfamilia roggioperlman chamber music workshopephedrine extraction from ephedraleveraged inverse etf listgingerdead man vs evil bong full movierobert dickinson lighting designerdave gahan herointoyota motor north america inc tmaiui timing frozen spermmaputi meaningmike o hearn bicepsnico mak computing winzipvai se fuder translated in englishdehorning goats agecurrent nanoscience impact factor 2016walther p5 compactemirates a380 seat widthlubbock lineup july 2017northam rainfallmaikling talambuhayarbitrage bet findercrans montana plan des pisteskometic snowmobileconvict chaliceoptiplex 3020 vga and displayportdebbie talmannormal rise time bipapinflamed cuticles symptoms&w 9mm shield owners manualadam first wife lilith in the bibleberetta 92 22 conversion kitshoppers drug mart merivale mallshoreway shopping center儚い 漢字flint boxer claressa shields2006 mercury mountaineer transmission fluid dipstickwapato high school basketballdiane schuur love songsakuifernick jr noche buenaverizon rt 17 south paramus njcounter strike terrorist winhss cardiologykhwab dekhe race full songomnibus de mexico monterrey paqueteria telefonofaberge crystal stemwarehippopotamus etymologypokemon fire red celiofuck shit stack by reggie wattsus taekwondo grandmasters societyis the girl on sense8 really transgenderlist of nbi directorssig sauer p229 elite pricetadao ando boxingjazz syncopation examplessmith and wesson bodyguard trigger modbest budget pcp air riflegrinch carved the roast beastsalary of chemical engineer in kenyadog bounty hunter bear macedell u2412m monitor specificationsreactive armor tilescartoon network co uk dm3puffy itchy eyelids blepharitisnepeta rhsunfulfilling low level work position in slangvitamin d 10000 iu in micrograms7.1 l duramaxomega speedmaster mark 2 reviewporphyria biochemistryargentine fn falmace watts myrtle beachchoteau drugstomach making gurgling noises and painharmony korine spring breakers trailerfontenamarie jean antoine nicolas caritatused fully powered stackers503034the story of keesh wikipediafsh muscular dystrophy paincourtney love uncoolar15 barrel profileslymphogranuloma venereum testingm4 carbine bayonet adaptergunzoneloretta lynn mentorfred macpherson spectornura rise of the yokai clan rikuo and kanamace te voglachildren's clinic midtown milwaukeesociété marocaine d ingénierie touristiquevata dosha diet in hindiundertaker crutcheseugene armstrong beheadingshops at birch run outlet mallbron yr aur jimmy pagedaytrana manufacturersaiga 308 rifle accessoriesfederal 158 grain 357 magnumacoustical sealant usesboss bison ranchspringfield nj fireworks 2017sabel gonzales ageputty squad nintendo 3dsuscis applicant vs petitionerinxs original sin chordsgiant omnium 2011etizolam prescribing informationchef ramzi appinvitation to hell wes cravenmangal pandey short biographyglomus tumor definitionchelsea kane lovestruckaws elemental careersmercadito de los angeles cadelhi university marksheet verification onlinesig sauer sp2022 pro 9mmsentient hedge fundwilliam singe i alex aiono march 16a clockwork orange 1971 in hindi dubbeddadao knifekorean drama with chaebol backgroundeagles song lyin eyes lyricshow to pronounce famke janssenberetta silver pigeon 12 gauge pumpdecahydrate sodium sulfateexton park fireworksrelocating greensboro ncnickajack tnwhy does a shotgun need waddingfirefox blacklist addoninglorious bastards latino300 winchester magnum recoilsignet jewelers lawsuitoppositional defiant disorder comorbid autismwhere to buy methaqualonekosi flood 2008gold digger lyrics bohemia