At the beginning of this week I went to a presentation of one of the new features in HTML5 : the offline application cache.
Continue reading
Eclipse Day Paris 2010 : Git, EclipseLink, Dali and e4
Today I attended part of the Eclipse Day Paris 2010 event.
I was mostly interested in the presentation of EGit and JGit.
Continue reading
Enterprise JavaBeans 3.1, sixth edition, available now
I just noticed that the sixth edition of the book Enterprise JavaBeans, updated to the specification 3.1, from O’Reilly, by Andrew Lee Rubinger (JBoss) and Bill Burke (JBoss), is now available.
I am looking forward to reading it.
The book does not focus on any specific application server. As mentioned in the introduction :
“Because the focus of this book is on developing vendor independent EJB components and solutions, we have stayed away from proprietary extensions and vendor-dependent idioms wherever possible. You can use any EJBcompliant server with this book, but you should be familiar with your server’s specific installation, deployment, and runtime-management procedures to work with the examples.”
Difference between ETL and ELT
Today I heard an interesting answer to the question : what is the difference between ETL and ELT ?
The answer is : in ETL the transformations are processed by the ETL tools while in ELT the transformations are processed by the target datasources (RDBMS). I guess that the rising scalability of databases allows this kind of data integration to be possible.
Continue reading
Repair the TCP/IP protocol under Windows
Lately, I have had problems connecting to the internet. The connection would last for 2, 3 or 5 hours before it would fail again.
After trying many methods, I found out that the problem was the TCP/IP protocol itself.
There is a way to repair a damaged TCP/IP protocol, which is a core component of Windows.
Under DOS, with administrator rights, type in the following commands :
Continue reading
First introduction to NoSQL
This week, I attended a meeting about NoSQL. And so here is a summary of the notes i have taken and what i have learnt and understood, so far.
First, what is NoSQL ?
That term stands for (N)ot (O)nly SQL. A detailed definition can be found on Wikipedia.
Continue reading
How to use customized entities
CRM Dynamics contains native entities (contact, account, opportunity, appointment …).
The CRM SDK API already contains specific classes for these native entities.
It is possible to create customized entities. To use them in programs, i found that there
are two options for that : either use crm webservice or use the CRM SDK API. With the latter option, you have to use Dynamic entity to access your custom entities.
Continue reading
Steps to run a plug-in for the Dynamics CRM in debug mode
Here are the steps to run a plug-in in debug mode
1) In Visual Studio (BIDS), build the project
2) Copy the generated DLL file and the PDB file (they are located in the project folder, under bin\Debug) to the CRM assembly folder : C:\Program Files\Microsoft Dynamics CRM\Server\bin\assembly
3) Deploy or redeploy the plug-in using the Plug-in registration tool
Continue reading
Show the module positions of a Joomla website
I have been playing with Joomla recently. As a beginner there is a tip that I find useful.
Although it is a tip that is quite well-known (Google brings more than 20 000 results for it), I will still mention it here.
If you want to know the module positions of a Joomla website, add the parameter ?tp=1 to the URL. For instance :
http://www.mysite.com/?tp=1
More Joomla secrets can be found here : http://docs.joomla.org/Joomla_secrets
Review of the book JSF 2.0 Cookbook
This book covers the new features of JSF 2 in the form of about 1OO hundred recipes.
In my opinion these recipes give a good overview of the new capabilities of the latest version of JSF.
The chapters get right to the point with very common problems/requirements in web development and their solutions.
Continue reading
Google dropping Wave
Not surprisingly, Google is dropping Wave. The official statement from a vice senior president of Google is here :
http://googleblog.blogspot.com/2010/08/update-on-google-wave.html
Well, I got an invite and even attended a demo once but never got the time or the desire to use it.
Running 2 JBoss 6.0.0 servers on one machine
Today I wanted to experiment some load balancing with JBoss and Apache. For that I needed to run 2 JBoss servers on one single machine.
Server 1 is installed in D:\jboss-6.0.0.20100721-M4-Server1
Server 2 is installed in D:\jboss-6.0.0.20100721-M4-Server2
Of course if you run both servers at the same time, you will get errors such as “address already in use” because of services running on the same ports in both servers.
It turns out that you need to modify the D:\jboss-6.0.0.20100721-M4-Server1\server\default\conf\bindingservice.beans\META-INF\bindings-jboss-beans.xml file to avoid same port conflicts.
So I added 100 to all ports defined in that file, for server 1.
For server 2, I only modified the HTTP WEB SERVER port because port 8080 is already taken by Oracle.
There is no need to modify the D:\jboss-6.0.0.20100721-M4-Server1\server\default\deploy\jbossweb.sar\server.xml file.
Running multiple instances of a single JBoss server is a different story. More information can be found here (ServiceBindingManager) and here .
First baby steps with Android OS
I do not have a phone that runs Android but i am curious about this OS created by Google. That is something possible with an emulator.
This link has a nice and quick tutorial to get started with the emulator for PC.
Press Ctrl-F11 to switch between portrait mode and landscape mode.
Also, this other tutorial explains how to install the Android Market in the emulator, so you
can install new apps or games and test them.
Anti IF programming campaign
The site http://www.antiifcampaign.com/ aims to persuade developers to avoid using too many IFs in their code and to use “Object Oriented principles” instead.
It seems like a nice effort, too bad there is not much to see in the website (only 1 article).
Control and data flows in SSIS
I created this package while working with SSIS for the first time.
The objective of this package is to extract data from 3 flat files in .txt format and perform some controls before inserting the data into 3 tables,
one table (destination) for each file (source).
These files are Territoires.txt, Personnes.txt and Ventes.txt. The data is extracted in that order.
The tables are SimuTerritoires, SimuPersonnes and SimuVentes.
These controls aim to :
– check if the SalesQuota is null
– check if the TotalDue is empty. If so, assign the value 0
– check the Orderdate value. If it is empty, assign the value 01/01/2001
– check the referential integrity. In the Ventes.txt file, if the Territory ID is not found in the table SimuTerritoires, then reject the row.
Inside my script component, I have a very simple method which processes every row.
The Microsoft Visual C# 2008 code for that method is :
public override void Input0_ProcessInputRow(Input0Buffer Row) { if (Row.OrderDateConverti_IsNull == true) { Row.OrderDateConverti = DateTime.ParseExact("01/01/2001", "MM/dd/yyyy", System.Globalization.CultureInfo.InvariantCulture); } }
The data of the files comes originally from the AdventureWorks sample database (Territories, Persons and Sales tables). You can download the package file, Simulation2.dtx, here.
Here are a few screenshots :
My book on EJB 3 is now on sale
Expressions and SSIS Cheat Sheet
I have been working with SQL Server 2008 Integration Services lately and I found a cheat sheet for SSIS that is quite helpful.
This cheat sheet is available in PDF format from PragmaticWorks at http://www.pragmaticworks.com/cheatsheet/.
Review of the book Apache Struts 2 – Web Application Development
This book is made of 15 chapters. One might consider that the first nine chapters (205 pages) explain what’s new with Struts 2 and that the rest of the book
is a mix of JavaScript/Ajax learning and good practices to document and test a web application.
It is based on the 2.1.6 version of Struts.
No direct access for JSP under WEB-INF
I have been asked several times in the past whether files under WEB-INF can be accessed or not.
It is indeed somewhat confusing. The answer is YES and NO.
You cannot access them directly.
For instance the following URL would give a 404 error :
http://localhost:8085/myWebApp/WEB-INF/test.jsp
But you can access test.jsp indirectly.
For instance the following JSP, callTest.jsp, contains code that includes a call to the somewhat protected JSP test.jsp :
<%@ include file="WEB-INF/test.jsp" %>
The URL to call the JSP is :
http://localhost:8085/myWebApp/callTest.jsp
iPad simulator
It is possible to check how a site will look like on the iPad by visiting http://www.ipadpeek.com/
By default it shows a portrait view but if you click on the upper left or right corner, you can rotate it and get a portrait view.
jQuery is the most detected JavaScript library in use on the web
More interesting stats : according to BuiltWith Trends, which provides trending information, jQuery is the most detected JavaScript library in use on the web. About 30% of the top 10000 web sites use it.
You can check the stats for all JavaScript frameworks here and for jQuery specifically here.
The truth about Flash Player
Adobe published some stats about Flash Player, in case you did not already them :
http://www.adobe.com/choice/flash.html
98% of Internet connected PCs have Flash Player
75% of web video is viewed using Flash Player
98% of enterprises rely on Flash Player
Review of the book iReport 3.7
In this book made of 12 chapters, the author Shamsuddin Ahammad shows how to use iReport, the indispensable tool to conceive reports based on the JasperReports library, written with Java.
A MySQL database is created and its model is described in the appendix.