Aquí teneis un pequeño ejemplo de como enviar correos con Gmail:
import java.security.Security;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
public class GmailWrapper {
private static final String MAIL_SERVER = "smtp.gmail.com";
private static final String MAIL_PORT = "465";
private static final String MAIL_FROM = "from@gmail.com";
private static final String MAIL_USER = "user@gmail.com";
private static final String MAIL_PASSWORD = "password";
public void sendRememberMail(String username, String password, String to) {
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
String msgBody = "The message you want to sent";
String msgSubject = "Mail subject";
Properties properties = new Properties();
properties.put("mail.smtp.user", MAIL_FROM);
properties.put("mail.smtp.password", MAIL_PASSWORD);
properties.put("mail.smtp.host",MAIL_SERVER);
properties.put("mail.smtp.port", MAIL_PORT);
properties.put("mail.smtp.starttls.enable","true");
properties.put( "mail.smtp.auth", "true");
properties.put("mail.smtp.debug", "false");
properties.put("mail.from",MAIL_FROM);
properties.put("mail.smtp.socketFactory.port", MAIL_PORT);
properties.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
properties.put("mail.smtp.socketFactory.fallback", "false");
try {
Authenticator auth = new MyAuthenthicator();
Session session = Session.getInstance(properties, auth);
session.setDebug(false);
Message message = new MimeMessage(session);
InternetAddress[] address = {new InternetAddress(to)};
message.setRecipients(Message.RecipientType.TO, address);
message.setFrom(new InternetAddress(MAIL_FROM));
message.setSubject(msgSubject);
message.setText(msgBody);
BodyPart messageBodyPart = new MimeBodyPart();
String messageText = msgBody;
messageBodyPart.setText(messageText);
Multipart mPart = new MimeMultipart();
BodyPart body = new MimeBodyPart();
body.setContent(msgBody,"text/plain");
mPart.addBodyPart(body);
message.setContent(mPart);
message.saveChanges();
Transport transport = session.getTransport(address[0]);
transport.connect();
transport.sendMessage(message,address);
} catch (Exception e) {
// Catch exception
}
}
public class MyAuthenthicator extends Authenticator {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(MAIL_USER,MAIL_PASSWORD);
}
}
}
miércoles, 14 de noviembre de 2007
lunes, 15 de octubre de 2007
Strings de conexión
Una página curiosa sobre conexiones a diferentes tipos de bases de datos:
http://www.connectionstrings.com/
http://www.connectionstrings.com/
jueves, 11 de octubre de 2007
Envio de emails via VBS
Este script envia un email con un fichero adjunto utilizando un servidor SMTP externo via VB Script. Para probarlo, solamente tenemos que copiar el codigo en un fichero con extensión .vbs y desde una consola de dos, ejecutarlo.
objMessage.Subject = "Subject email"
objMessage.From = """Alis email"" "
objMessage.To = "to@mycompany.com"
objMessage.Cc = "cc@mycompany.com"
objMessage.Bcc = "bcc@mycompany.com"
objMessage.TextBody = "mail body"
objMessage.Addattachment "c:\test.txt"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.mycompany.com"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
objMessage.Configuration.Fields.update
objMessage.Send
objMessage.Subject = "Subject email"
objMessage.From = """Alis email"" "
objMessage.To = "to@mycompany.com"
objMessage.Cc = "cc@mycompany.com"
objMessage.Bcc = "bcc@mycompany.com"
objMessage.TextBody = "mail body"
objMessage.Addattachment "c:\test.txt"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.mycompany.com"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False
objMessage.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
objMessage.Configuration.Fields.update
objMessage.Send
viernes, 28 de septiembre de 2007
Conexión a un cubo OLAP desde Excel
Excel permite conectarse directamente a cubos OLAP mediante el motor de Analysis Services de SQL Server 2005.
En la pestaña de datos, tenemos la opción para obeterner datos de una fuente externa. Seleccionamos la opción Analysis Services.
Especificamos la dirección ip o nombre de la máquina:
En caso de utilizar autentificación con nombre de usuario y contraseña, en un paso futuro deberemos marcar la opción de Guardar contraseña en fichero.
De las diferentes bases de datos implemendas en el servidor, elegimos con la que queremos trabajar:
En el último paso, si hemos elegido autentificación con nombre de usuario y contraseña, deberemos marcar el chack de Guardar en fichero.
Una vez conectados al cubo, aparecerá una tabla dinámica con la que podremos jugar, arrastrando las dimensiones y hechos que queramos.
En la pestaña de datos, tenemos la opción para obeterner datos de una fuente externa. Seleccionamos la opción Analysis Services.
Especificamos la dirección ip o nombre de la máquina:
En caso de utilizar autentificación con nombre de usuario y contraseña, en un paso futuro deberemos marcar la opción de Guardar contraseña en fichero.
De las diferentes bases de datos implemendas en el servidor, elegimos con la que queremos trabajar:
En el último paso, si hemos elegido autentificación con nombre de usuario y contraseña, deberemos marcar el chack de Guardar en fichero.
Una vez conectados al cubo, aparecerá una tabla dinámica con la que podremos jugar, arrastrando las dimensiones y hechos que queramos.
martes, 25 de septiembre de 2007
Como eliminar el log transaccional de una base de datos
Muchas veces encontramos que una base de datos ocupa mucho espacio en disco sin tener un gran volumen de datos en ella. En estos casos, es habitual encontrar un fichero de log grande debido a las transacciones que se han llevado a cabo.
Para vaciar el fichero de log podemos ejecutar el siguiente código SQL:
BACKUP LOG MyDatabase WITH TRUNCATE_ONLY
DBCC SHRINKDATABASE (MyDatabase, TRUNCATEONLY )
Para vaciar el fichero de log podemos ejecutar el siguiente código SQL:
BACKUP LOG MyDatabase WITH TRUNCATE_ONLY
DBCC SHRINKDATABASE (MyDatabase, TRUNCATEONLY )
domingo, 23 de septiembre de 2007
Comandos FTP en MS-DOS
Podemos realizar un conjunto de comandos FTP en MS-DOS mediante un fichero adicional. Dicho fichero contendrá el acceso al servidor y los comandos que queramos realizar.
Como ejemplo:
En este ejemplo, nos conectamos al servidor, accedemos a la carpeta local c:\temp y descargamos el fichero myfile.
Para ejecutar la aplicación ftp con el fichero de comando, entramos la siguiente línea ftp -v -i -s:commands.txt.
Como ejemplo:
OPEN xxx.xxx.xxx.xxx
username
password
LCD C:\temp
GET myfile
QUIT
En este ejemplo, nos conectamos al servidor, accedemos a la carpeta local c:\temp y descargamos el fichero myfile.
Para ejecutar la aplicación ftp con el fichero de comando, entramos la siguiente línea ftp -v -i -s:commands.txt.
Report Builder con autentificación básica
Bajo la configuración de autentificación básica en Reporting Services, podemos comprobar que el usuario debe verificar sus credenciales cuando intenta acceder a alguno de los dos directorios virtuales del IIS. En cambio, si accedemos a la herramienta Report Builder, podremos comprobar que el sistema nos devuelve el siguiente error:
Es muy importante remarcar que esta opción solo debe realizarse si Reporting Services están configurado bajo SSL.
Cannot Retrieve Application. Authentication Error.
Para permitir el acceso a la herramienta, deberemos dar acceso anónimo a la carpeta/reportserver/reportbuilder
de los directorios virtuales del IIS.Es muy importante remarcar que esta opción solo debe realizarse si Reporting Services están configurado bajo SSL.
Etiquetas:
autentificación,
report builder
Suscribirse a:
Entradas (Atom)