Thursday, December 31, 2009

Writing a Zip file

This sample code shows the method to create a Zip file and add files to it. It uses ZipOutputStream to write zip file.


import java.io.*;
import java.util.zip.*;

public class ZipFileWrtExp {

public static void main(String[] args) {

try {
FileOutputStream fos = new FileOutputStream("C:\\MyZip.zip");
ZipOutputStream zos = new ZipOutputStream(fos);
ZipEntry ze= new ZipEntry("C:\\file1.txt");
zos.putNextEntry(ze);
zos.closeEntry();

ze= new ZipEntry("C:\\file2.txt");
zos.putNextEntry(ze);
zos.closeEntry();
zos.close();

} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

}
}

Source: java-tips.org

Tuesday, December 29, 2009

Sample MAP complier in CICS.

This is the samle map complier, you can use this to compile the maps.

//MAPCOM@ JOB MSGCLASS=X,MSGLEVEL=(1,1),CLASS=A,
// REGION=5M,NOTIFY=&SYSUID
//STEP1 EXEC DFHMAPS,
// DSCTLIB='&HLQ.CICS.COPY',
// MAPLIB='&LOADHLQ.CICS.LOAD',
// MAPNAME='&MAPNAME'
//COPY.SYSUT1 DD DSN=&HLQ.CICS.BMS(MEMBER),DISP=SHR

Sunday, December 27, 2009

Listing the image formats that can be read and written

This Java tip illustrates a method of listing the image formats that can be read and written. The complete list of available readable and writeable formats can be retrieved by calling ImageIO.getReaderFormatNames() and ImageIO.getWriterFormatNames(). By default, the javax.imageio package can read GIF, PNG, and JPEG images and can write PNG and JPEG images.


// Get list of unique supported read formats
String[] formatNames = ImageIO.getReaderFormatNames();
formatNames = unique(formatNames);
// e.g. png jpeg gif jpg

// Get list of unique supported write formats
formatNames = ImageIO.getWriterFormatNames();
formatNames = unique(formatNames);
// e.g. png jpeg jpg

// Get list of unique MIME types that can be read
formatNames = ImageIO.getReaderMIMETypes();
formatNames = unique(formatNames);
// e.g image/jpeg image/png image/x-png image/gif

// Get list of unique MIME types that can be written
formatNames = ImageIO.getWriterMIMETypes();
formatNames = unique(formatNames);
// e.g. image/jpeg image/png image/x-png

// Converts all strings in 'strings' to lowercase
// and returns an array containing the unique values.
// All returned values are lowercase.
public static String[] unique(String[] strings) {
Set set = new HashSet();
for (int i=0; i String name = strings[i].toLowerCase();
set.add(name);
}
return (String[])set.toArray(new String[0]);
}

source:java-tips.org

Friday, December 25, 2009

cfobjectcache in CF

The main function is to clear the occupied memory
and free the memory space.Flushes the query cache.

Syntax:




Attribute Req/Opt Description

action Required clear:Clears queries from the cache in the Application scope

Source : http://livedocs.adobe.com/coldfusion/6.1/htmldocs/tags-b11.htm#wp2310692

Wednesday, December 23, 2009

Risks to e-mail

There are several inherent risks in the way e-mail functions. When you send e-mail to a recipient, it travels to an SMTP (Simple Mail Transfer Protocol) server either directly (if you’re using an e-mail client such as Outlook) or via a Web server (if you’re using Web-based mail, such as Hotmail). The recipient will receive your e-mail directly from the SMTP server or via a Web server.
During this journey, any unauthorized person can access your messages by exploiting vulnerabilities on the SMTP or Web servers. Your messages can be read and copied by anyone who has access to the computers and networks through which your messages travel. In fact, authorized system administrators on the SMTP servers can also read, copy, save, delete, and modify your messages before sending them on.
During this ‘eavesdropping’, it may be possible to gain access to your usernames and passwords. The mischief-monger can then wreak havoc by sending messages on your behalf. You may also receive messages from known e-mail IDs that have been created and sent by unauthorized users; such messages usually contain viruses, Trojans or ask you to reply to the message with sensitive personal information, such as bank-account or credit-card details.
What’s more, mail backups on SMTP servers store the e-mail in plain text; sometimes, messages that you sent or received years ago are easily available on these backups, long after you have deleted them.
The issues with e-mail are, therefore, manifold - the sender’s e-mail ID may be stolen and misused, without the recipient knowing about it; messages may be intercepted; or messages may be stored such that their content is easily accessible.
Encryption, digital signatures, and digital certificates are some ways of securing e-mail from these threats.

Ref:India syndicate

Monday, December 21, 2009

Reading an Image from a file, inputStream, or URL

This Java tip illustrates a method of reading an Image from a file, inputStream, or URL. This tip also includes displaying of an image on the screen. Further, javax.imageio package is used to read an image from a file. This example works only above J2SE 1.4.


Image image = null;
try {
File sourceimage = new File("source.gif");
image = ImageIO.read(sourceimage);

InputStream is = new BufferedInputStream(
new FileInputStream("source.gif"));
image = ImageIO.read(is);

URL url = new URL("http://java-tips.org/source.gif");
image = ImageIO.read(url);
} catch (IOException e) {
}

JFrame frame = new JFrame();
JLabel label = new JLabel(new ImageIcon(image));
frame.getContentPane().add(label, BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);

Ref: java-tips.org

Saturday, December 19, 2009

Need to know more about file extensions?

Its a very intresting site to search more about the file extensions….

There are just TOO many of them this days.

ComputerFileExtensions.com that seem to be a nice resource for file extension and file formats.

On that site there exist a big database of all kind of file extensions you may come across and a good search facility to make it easier to find any file type you may looking for. I found there MXML and as too. Anyway, there is a way to see details on each file extension and it tells that extension.

Thursday, December 17, 2009

Compiling Flex application from command line

Prerequisites:
1. If Flex builder is not installed download Flex 3 SDK from http://www.adobe.com/products/flex/flexdownloads/index.html#sdk
2. Unzip it to c:\adobe\. In this case installDir = c:\adobe\
3. If Flex builder 3 is already installed check the install directory. Assuming installDir = c:\Adobe\
4. Java should be installed in the system.
5. Flash player should be installed in the system.

Creating and compiling Flex Application:
Open notepad or any editor and copy the code below:


http://www.adobe.com/2006/mxml" layout="vertical" width="100%" height="100%">



1. Save it as Text.mxml in c:\temp\
2. Open command prompt window.
3. installDir\sdks\3.x.x\bin\mxmlc.exe c:\temp\Test.mxml (installDir = c:\adobe)
4. It should be compiled to Test.swf in c:\temp

Tuesday, December 15, 2009

MVS SYSTEM CODES -S80A

The storage needed to execute the program was not available.
1. The region parameter did not specify enough storage.
2. The region parameter was omitted, and the default storage amount was too small to run the correct program.
3. Block sizes were increased or buffers were added, and the region size was not increased.
4. A logic error caused excessive storage to be obtained but not freed.

1. Increase the region size.
2. Look for logic errors which may cause excessive calls to other programs or requests for storage.

Ref: www.ibmmainframes.com

Sunday, December 13, 2009

Digital IDs and Signatures

Having a digital ID enables you to add another layer of security to your e-mail via digital signatures. A digital ID ties your identity information—name or e-mail ID, for instance—with your public key.
When you use this ID to digitally sign your messages, a part of your message is encrypted with your private key, so that the recipient knows that the message came from you; if you encrypt the message in addition, then the signature and the message are encrypted with your public key. This enables the recipient to know whether the message has been accessed or modified en route.
Digital IDs are provided via e-mail certificates, which are usually issued by external certification authorities (CAs). In organizations, sometimes, the administrator of your Exchange Server generates these certificates for users.
If you use Outlook, you can get e-mail certificates from CAs. Some like Comodo offer these free of charge for personal use; for commercial use, different schemes are available from various CAs. source:India syndicate

Friday, December 11, 2009

Concept of 3G

There will be a wide range, from simple single-application devices such as voice-only phones, to multi-purpose communicators capable of handling several voice, data and video services in parallel.

To date, the "terminal" for accessing mobile services has been the mobile phone. With the coming of 3G, we can expect to see a broadening of this concept to include a whole host of new terminals. These will be both general-purpose computing and communications devices, and devices with more specific purposes to serve particular marker segments. There will still be recognizable mobile phones. But many of these will have larger screens to display Internet pages or the face of the person being spoken to. There will be smaller "smart-phones" with limited web browsing and e-mail capabilities. The addition of mobile communications capabilities to laptop and palmtop computers will speed up the convergence of communications and computing, and bring to portable computing all the functions and features available on the most powerful desktop computers. There will be videophones, wrist communicators, palmtop computers, and radio modem cards for portable computers. Innovative new voice based interfaces will allow people to control their mobile communication services with voice commands.

We will also see the integration of 3G into a very wide range of devices and products other than user terminals. For example, the "telephone-on-a-card" will allow mobile services to be built into business equipment, vehicles and household appliances, for dedicated applications. Devices such as phones, computers and digital cameras will also be able to communicate with each other using short-range radio. Digital cameras will be able to use wide-area radio communications in real time and reduce the need for bulky memory and other components.

Wednesday, December 09, 2009

How to enable HOT deployment scanner in JBoss ?

Steps :
  • Open the file $JBOSS_HOME/server/[Instance Name]/conf/jboss-service.xml
  • Search for "ScanEnabled"
  • The enable to the Hot deployment scanner as below
    true
  • You can set the Automatic scan period for Hot deployment,
    5000
  • Restart the service once you made the changes.

Monday, December 07, 2009

cfupdate in CF

Updates records in a data source from data in a ColdFusion form or form Scope.

Syntax :


Attribute - description

dataSource- Name of the data source that contains the table. tableName- Name of table to update. tableOwner- For data sources that support table ownership tableQualifier- For data sources that support table qualifiers. username- Overrides username value specified in ODBC setup.password- Overrides password value specified in ODBC setup.formFields-Comma-delimited list of form fields to update.

Note :
If a form field is not matched by a column name in the database, ColdFusion throws an error.
The formFields lies must include the database table primary key field, which must be present in the form. It can be hidden.

Program :

SELECT Course_Number, Course_ID, DescriptFROM CoursesWHERE Course_ID = #Trim(url.Course_ID)#ORDER by Course_Number

Source : http://livedocs.adobe.com/coldfusion/6.1/htmldocs/tags-c19.htm#wp1104662

Saturday, December 05, 2009

Saving a BufferedImage to a PNG file

You can save a BufferedImage object using write method of the javax.imageio.ImageIO class. The signutaure of the method is like this:
public static boolean write(RenderedImage im,
String formatName,
File output)
throws IOException

Here im is the RenderedImage to be written, formatName is the String containg the informal name of the format (e.g. png) and output is the file object to be written to. An example usage of the method for PNG file format is shown below:
ImageIO.write(image, "png", file);

You can also use getReaderFormatNames method of the same class to learn available informal format names understood by the current set of registered readers.

source: java-tips.org

Thursday, December 03, 2009

Protecting Worksheet Names in Excel!!

If you are developing workbooks for others to use, you may want your worksheets to retain whatever names you give them. Excel normally allows users to change worksheet names, as desired. If you don't want them to change, the only way to prevent it is to lock the workbook. You can take these steps if you are using a version of Excel prior to Excel 2007:

1.Display the Review tab of the ribbon.
2.Click Protect Workbook in the Changes group. Excel displays the Protect Structure and Windows dialog box. (Click here to see a related figure.)
3.Make sure that the Structure check box is selected.
4.Enter a password in the Password box.
5.Click on OK. Excel displays the Confirm Password dialog box, prompting you to reenter the password.
6.Reenter the password and click on OK.

The user can no longer make changes to the names of the worksheet tabs, nor to anything else that affects the structure of the workbook. (For instance, they cannot enter new worksheets or delete existing ones.)

If you want to protect the workbook under the control of a macro, then you can use this code:
ActiveWorkbook.Protect Password:="MyPassword", Structure:=TrueAll you need to do is provide password you want to use in place of the "MyPassword" example.

Source: http://excel2007.tips.net/Pages/T0102_Protecting_Worksheet_Names.html

Tuesday, December 01, 2009

Adobe squeezes AIR out of beta for Linux users

Adobe just released the beta version of Adobe AIR for Linux on Adobe Labs!
This Labs release of AIR has all features implemented for Linux, except support for DRM and badge installations. Major new features include support for system tray icons, keyboard shortcuts, localization, internationalized input (IME support), filetype registration, SWF and PDF in HTML, multi-monitor support, fullscreen mode, encrypted local storage, support for V4L2 cameras and printing.

The list of supported distributions has also been updated to:
1. Ubuntu 7.10
2. Fedora 8
3. OpenSuSE 10.3

Any AIR application that works on Windows/Mac AIR release version 1.1 should ideally work on Linux too

Monday, November 30, 2009

IIS 6 – Viva the Application Pool

IIS 6 changes the processing model significantly in that IIS no longer hosts any foreign executable code like ISAPI extensions directly. Instead IIS 6 always creates a separate worker process – an Application Pool – and all processing occurs inside of this process, including execution of the ISAPI dll. Application Pools are a big improvement for IIS 6, as they allow very granular control over what executes in a given process. Application Pools can be configured for every virtual directory or the entire Web site, so you can isolate every Web application easily into its own process that will be completely isolated from any other Web application running on the same machine. If one process dies it will not affect any others at least from the Web processing perspective.

In addition, Application Pools are highly configurable. You can configure their execution security environment by setting an execution impersonation level for the pool which allows you to customize the rights given to a Web application in that same granular fashion. One big improvement for ASP.NET is that the Application Pool replaces most of the ProcessModel entry in machine.config. This entry was difficult to manage in IIS 5, because the settings were global and could not be overridden in an application specific web.config file. When running IIS 6, the ProcessModel setting is mostly ignored and settings are instead read from the Application Pool. I say mostly – some settings, like the size of the ThreadPool and IO threads still are configured through this key since they have no equivalent in the Application Pool settings of the server.

Because Application Pools are external executables these executables can also be easily monitored and managed. IIS 6 provides a number of health checking, restarting and timeout options that can detect and in many cases correct problems with an application. Finally IIS 6’s Application Pools don’t rely on COM+ as IIS 5 isolation processes did which has improved performance and stability especially for applications that need to use COM objects internally.

ref:west-wind

Saturday, November 28, 2009

MVS SYSTEM CODES-S804

The storage needed to execute the program was not available.

1. The region parameter did not specify enough storage.
2. The region parameter was omitted, and the default storage amount was too small to run the correct program.
3. Block sizes were increased or buffers were added, and the region size was not increased.
4. A logic error caused excessive storage to be obtained but not freed.

1. Increase the region size.
2. Look for logic errors which may cause excessive f calls to other programs or requests for storage.

Ref: www.ibmmainframes.com

Thursday, November 26, 2009

Encrypting e-mail

Encryption means scrambling the text of your message to a seemingly gibberish combination of letters and numbers, so that anyone who reads it en route can make no sense of it. Only the recipient is able to decrypt the message.
Using public keys is the most common form of encryption. This requires the use of two keys - a public key and a private key. The private key resides on your computer and you share the public key with the recipients to which you wish to send encrypted messages. When you wish to send the message, you encrypt it with the public key. On the other end, the recipient needs its own private key and your public key to decrypt the message. Since the message is decrypted using your public key, it proves that you sent the message. You can encrypt messages as well as attachments.
If you use Outlook as your e-mail client, encryption is built into it via digital IDs, which enable you to encrypt your message and digitally sign it as well. You can also use the popular public-key encryption system, PGP (Pretty Good Privacy), with Outlook itself and with other e-mail clients. This utility is available as freeware on Source: www.pgpi.org.

Tuesday, November 24, 2009

IIS 6 – Viva the Application Pool

Although IIS 6 application pools are separate EXEs, they are highly optimized for HTTP operations by directly communicating with a kernel mode HTTP.SYS driver. Incoming requests are directly routed to the appropriate application pool. InetInfo acts merely as an Administration and configuration service – most interaction actually occurs directly between HTTP.SYS and the Application Pools, all of which translates into a more stable and higher performance environment over IIS 5. This is especially true for static content and ASP.NET applications.

An IIS 6 application pool also has intrinsic knowledge of ASP.NET and ASP.NET can communicate with new low level APIs that allow direct access to the HTTP Cache APIs which can offload caching from the ASP.NET level directly into the Web Server’s cache. In IIS 6, ISAPI extensions run in the Application Pool worker process. The .NET Runtime also runs in this same process, so communication between the ISAPI extension and the .NET runtime happens in-process which is inherently more efficient than the named pipe interface that IIS 5 must use. Although the IIS hosting models are very different the actual interfaces into managed code are very similar – only the process in getting the request routed varies a bit.

Sunday, November 22, 2009

MVS SYSTEM CODES-S806

A module requested by the program could not be found.

1. The module requested did not exist in the data sets specified in the STEPLIB or JOBLIB.
2. A JCL STEPLIB or JOBLIB DD statement was missing or incorrect.
3. The module name was misspelled.
4. An I/O error occurred in searching for the module in the library directory.

1. Verify that the correct program is being requested.
2. Ensure that the appropriate STEPLIB or JOBLIB DD statements are in the JCL.
3. If necessary, recreate the data set.
Ref: www.ibmmainframes.com

Friday, November 20, 2009

AS/400 Tip 2

Data Areas are chunks of memory to hold a few control values. A typical use is to keep track of the last invoice number for a system.

To create a data area, use the command
CRTDTAARA (Create Data Area).
For example, to create a 100 character data area named LASTINV#:
CRTDTAARA DTAARA(MYLIB/LASTINV#) TYPE(*CHAR) LEN(100)
Now, load the first 10 positions with the value "AA12345678" with the CHGDTAARA (Change Data Area) command
CHGDTAARA DTAARA(QTEMP/LASTINV# (1 10)) VALUE('AA12345678')
Look at the value of the data area with DSPDTAARA (Display Data Area):
DSPDTAARA MYLIB/LASTINV# A CL program can retrieve the value with RTVDTAARA.
An RPG program uses the "IN" operation to retrieve the value and the "OUT" operation to change it. There is a special Data Area known as the LDA (Local Data Area). It is 1024 characters and is associated with a job. So, any display session has an LDA associated with it. Not only that, when a job is submitted to run in batch, the LDA gets sent with the job so the batch job can read the LDA of the display session that submitted it.

View and change your LDA by using *LDA instead of a data area name:
DSPDTAARA *LDA CHGDTAARA DTAARA(*LDA (1 10)) VALUE('AA12345678')
Using the LDA is considered by many to be an obsolete style. Older programs use the LDA to store and pass parameters.

Source: http://www.texas400.com/b400tip1.html

Wednesday, November 18, 2009

AS/400 Tip 1

Converting an AS/400 database file to a CSV file
You may find yourself in a situation where you want to run a Query on a file, save the information to a database,and then convert that information to a Comma Separated Variable (CSV) file. This is especially true when you need the data to be used in a "spread sheet" format like Excel.
The simplest way to do this is to copy the information from the data file to your newly created CSV file.

Enter this command:
CPYTOIMPF FROMFILE(*LIBL/DTAFIL) TOFILE(USER999/CSVPC)
Hit Enter, and then again 3 times and you have now created a Comma Separated Variable (CSV) File.
Remember that you need a 'destination file' before you can use this command. To create a 'destination file', you will need to use the Create Physical File command. To create a file named CSVPC that is 200 characters in length, type in the command:
CRTPF FILE(USER999/CSVPC)
Hit F4 to prompt the command, and type in the record length you need, for Member, be sure to name it CSV.

Source: http://www.texas400.com/b400tip23.html

Monday, November 16, 2009

CHARSET Statement

The CHARSET statement specifies the contents of one or more of the character segments of a library character set module. A library character set module consists of header information followed by 64 character segments. Each character segment contains the character's 6-bit code for a WCGM location, its scan pattern, and its pitch. You can use the INCLUDE statement to copy an entire module, minus any segments deleted using the DELSEG keyword. In addition, you can use the CHARSET statement to select character segments from any module named with a library character set ID or the GCM keyword. The CHARSET statement can also specify the scan pattern and characteristics for a new character.

The CHARSET statement must always be followed by a NAME statement, another CHARSET statement, or one or more data statements. The CHARSET statement must be preceded by an OPTION statement with the DEVICE parameter if you want to create library character set modules in the 3800 Model 3 compatibility mode module format. The CHARSET statement can be preceded by an INCLUDE statement. More than one CHARSET statement can be coded in the operation group. The operation group can include CHARSET statements that select characters from existing modules and CHARSET statements that create new characters. The CHARSET statement, preceded by an INCLUDE statement, can be used to delete one or more segments from the copy of an existing module to create a new module.

A CHARSET statement with no operands specified, followed by a NAME statement that identifies a library character set module, is used to format and print the module.

Source : http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/dgt1u104/7.5.7?DT=19990113105507

Saturday, November 14, 2009

INCLUDE Statement

When an IEBIMAGE operation group is used to create a new module, the INCLUDE statement can identify an existing image library module to be copied and used as a basis for the new module. When the operation group is used to update an image library module, the INCLUDE statement identifies the module to be referred to and must be specified.

When the INCLUDE statement is coded in an operation group, it must precede any FCB, COPYMOD, TABLE, GRAPHIC, or CHARSET statements.

Only one INCLUDE statement should be coded for each operation group. If more than one is coded, only the last is used; the others are ignored.

You can code an INCLUDE statement for an FCB module only if the DEVICE=4248 parameter is specified on the OPTION statement. Either 3211 format or 4248 format FCBs may be included. IEBIMAGE tries to locate the 4248 format FCB first; if it is not found, IEBIMAGE looks for the 3211 format. You cannot copy a 3800 FCB module with INCLUDE.

Source : http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/dgt1u104/7.5.8?DT=19990113105507

Thursday, November 12, 2009

Different ways to shut down your PC

There are so many different ways to turn off your Windows XP computer, let's look at some of them:
1. The standard approach - click the Start Button with your mouse, then select the Turn Off menu and finally click the Turn Off icon on the Turn Off computer dialog.
2. Press Ctrl+Esc key or the Win key and press U two times - the fastest approach.
3. Get the Shutdown utility from Download.com - it adds the shut down shortcuts for you. Else create them yourself using approach (4).
4. Create a shutdown shortcut on your desktop. Right click on the desktop, choose New Shortcut and type shutdown -s -t 00 in the area where you are asked to specify the location of the program file. Now you can just double click this icon to turn off the computer. The best location would be your quick launch bar.
5. Press the Win key + R key to open the run window. Type shutdown -s -t 00. [s means shutdown while t means the duration after which you want to initiate the shutdown process]. If some open processes or application won't let you turn off, append a -f switch to force a shutdown by closing all active processes.
6. Win+M to minimize all windows and then Alt+F4 to bring the Turn Off computer dialog.
7. Open Windows Task manager (by right clicking the Windows Task bar or Alt+Ctrl+Del) and choose Shut down from the menu. Useful when the Windows are not responding.
8. open task manager - click on shutdown - hold the ctrl key and click on Turn off, pc will be turned off in 3 secs. Fastest method other than hard shutdown.

Tuesday, November 10, 2009

Create and Format an Excel in Asp.net

A simple code snippet to create excel and write some date to cell from C#.
Step 1: Add reference to " microsoft excel 12.0 object library " in the project.
Step 2: Include the namespace " using Excel = Microsoft.Office.Interop.Excel; "
Step 3: In the click event of export button:
string strCurrentDir = Server.MapPath(".") + "\\";
Excel.Application excel = new Excel.ApplicationClass();
excel.Visible = false;
Excel._Workbook workbook = excel.Workbooks.Add(Missing.Value);
Excel.Sheets sheets = workbook.Worksheets;
Excel._Worksheet exlSheet = (Excel.Worksheet)sheets.get_Item("Sheet1");
summarySheet.Name = "Report Name";
Excel.Range headerRng = (Excel.Range)exlSheet .get_Range("A1", "B1");
headerRng.MergeCells = true; headerRng.Value2 = "Report Header";
headerRng.Font.Bold = true;
headerRng.Font.Name = "Arial";
headerRng.Font.Size = 18;
headerRng.WrapText = true;
headerRng.HorizontalAlignment = Excel.Constants.xlCenter;
headerRng.Interior.Color = System.Drawing.Color.Gray.ToArgb();
headerRng.Borders.Weight = 3;
headerRng.Borders.LineStyle = Excel.Constants.xlSolid;
headerRng.Cells.RowHeight = 30;
headerRng.EntireColumn.AutoFit();

workbook.SaveAs(strCurrentDir + "ExportReport.xls", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, null, null, false, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, false, false, null, null, null);

Sunday, November 08, 2009

Verifying a connection between the AS/400 and RPM

To make a TCP/IP connection to RPM, the TELNET command may be used. To verify a connection, perform the following telnet test.
  • At the AS/400 command prompt, type TELNET and press F4
  • In the Start TCP/IP TELNET (TELNET) screen, press F9 to view "all parameters."
  • In the Remote System field, type *INTNETADR. Enter the IP address of the RPM host in the Internet Address field.
  • Locate the Port parameter and enter 515, then press Enter.

If RPM is configured to relax the 'port in range' requirement, this will input-inhibit the session if a connection is made. Close RPM (Windows 9x) or restart the RPM service (RPM Elite/Select) to release the AS/400 session. Then restart RPM and check the RPM log for new message.

If RPM is not configured this way, a new message should be displayed in the RPM log stating:
Client port xxxx out of range
Although this message is a warning, it verifies that a connection was made to RPM at port 515.

Source: http://www.brooksnet.com/faq/101-11.html

Friday, November 06, 2009

Finding and displaying hyperlinks in a web page

The Java application written below uses regular expressions to find and display hyperlinks contained within a Web page. After compiling the file, you should save a Web page to the same folder that contains ShowLinks.class.

import java.io.*;
import java.util.regex.*;
public class ShowLinks {
public static void main(String[] arguments) {
if (arguments.length < 1) {
System.out.println("Usage: java ShowLinks [page]");
System.exit(0);
}
String page = loadPage(arguments[0]);
Pattern pattern = Pattern.compile(" Matcher matcher = pattern.matcher(page);
while (matcher.find()) {
System.out.println( matcher.group(1));
}
}

private static String loadPage(String name) {
StringBuffer output = new StringBuffer();
try {
FileReader file = new FileReader(name);
BufferedReader buff = new BufferedReader(file);
boolean eof = false;
while (!eof) {
String line = buff.readLine();
if (line == null)
eof = true;
else
output.append(line + "\n");
}
buff.close();
} catch (IOException e) {
System.out.println("Error – " + e.toString());
}
return output.toString();
}
}

java-tips.org

Wednesday, November 04, 2009

Compressing a Byte Array

This Java tip illustrates an example of compressing a Byte Array. Developer may compress a byte array with the help of Deflater class.
byte[] input = "compression string".getBytes();
Deflater compressor = new Deflater();
compressor.setLevel(Deflater.BEST_COMPRESSION);
compressor.setInput(input);
compressor.finish();
ByteArrayOutputStream bos = new ByteArrayOutputStream(input.length);
byte[] buf = new byte[1024];
while (!compressor.finished()) {
int count = compressor.deflate(buf);
bos.write(buf, 0, count);
}
try {
bos.close();
} catch (IOException e) {
}
byte[] compressedData = bos.toByteArray();

java-tips.org

Monday, November 02, 2009

What is Adobe Text Layout Framework

The Text Layout Framework is an extensible library, built on the new text engine in Adobe Flash Player 10, which delivers advanced, easy-to-integrate typographic and text layout features for rich, sophisticated and innovative typography on the web. The framework is designed to be used with Adobe Flash CS4 Professional or Adobe Flex®, and is already included in the next version of Flex, code named Gumbo. Developers can use or extend existing components, or use the framework to create their own text components.

Together with the new text engine in Flash Player 10 and AIR 1.5, the Text Layout Framework delivers multi-lingual, print-quality typography for the web, including support for:
  • Bidirectional text, vertical text and over 30 writing systems including Arabic, Hebrew, Chinese, Japanese, Korean, Thai, Lao, the major writing systems of India, and others.
    >Selection, editing and flowing text across multiple columns and linked containers, and around inline images
  • Vertical text, Tate-Chu-Yoko (horizontal within vertical text) and justifier for East Asian typography
  • Rich typographical controls, including kerning, ligatures, typographic case, digit case, digit width and discretionary hyphens
  • Cut, copy, paste, undo and standard keyboard and mouse gestures for editing
  • Rich developer APIs to manipulate text content, layout, markup and create custom text components.

Saturday, October 31, 2009

EXCEL SHORTCUT KEYS

F2 Edit the selected cell
F5 Go to a specific cell
F7 Spell check selected text and/or document
F11 Create chart
Ctrl + Shift + ; Enter the current time
Ctrl + ; Enter the current date
Alt + Shift + F1 Insert new worksheet
Shift + F3 Open the Excel® formula window
Shift + F5 Bring up search box
Ctrl + A Select all contents of worksheet
Ctrl + B Bold highlighted selection
Ctrl + I Italicize highlighted selection
Ctrl + C Copy selected text
Ctrl + V Paste
Ctrl + D Fill
Ctrl + K Insert link
Ctrl + F Open find and replace options
Ctrl + G Open go-to options
Ctrl + H Open find and replace options
Ctrl + U Underline highlighted selection
Ctrl + Y Underline selected text
Ctrl + 5 Strikethrough highlighted selection
Ctrl + O Open options
Ctrl + N Open new document
Ctrl + P Open print dialog box
Ctrl + S Save
Ctrl + Z Undo last action
Ctrl + F9 Minimize current window
Ctrl + F10 Maximize currently selected window
Ctrl + F6 Switch between open workbooks/windows
Ctrl + Page up & Page Down Move between Excel® worksheets in the same document
Ctrl + Tab Move between two or more open Excel® files
Alt + = Create formula to sum all of above cells
Ctrl + ‘ Insert value of above cell into current cell
Ctrl + Shift + ! Format number in comma format
Ctrl + Shift + $ Format number in currency format
Ctrl + Shift + # Format number in date format
Ctrl + Shift + % Format number in percentage format
Ctrl + Shift + ^ Format number in scientific format
Ctrl + Shift + @ Format number in time format
Ctrl + g Move to next section of text
Ctrl + Space Select entire column
Shift + Space Select entire row
Ctrl + W Close document

Thursday, October 29, 2009

Applying Regular Expressions on the contents of a file

This Java tip illustrates a method of applying Regular Expressions on the contents of a file. The matching routines in java.util.regex require that the input be a CharSequence object. This tip implements a method that efficiently returns the contents of a file in a CharSequence object.

public CharSequence fromFile(String filename) throws IOException {
FileInputStream input = new FileInputStream(filename);
FileChannel channel = input.getChannel();
ByteBuffer bbuf = channel.map(FileChannel.MapMode.READ_ONLY, 0, (int)channel.size());
CharBuffer cbuf = Charset.forName("8859_1").newDecoder().decode(bbuf);
return cbuf;
}

Here is sample code that uses the above method:
try {
Pattern pattern = Pattern.compile("pattern");
Matcher matcher = pattern.matcher(fromFile("infile.txt"));
while (matcher.find()) {
String match = matcher.group();
}
} catch (IOException e) {
}
java-tips.org

Tuesday, October 27, 2009

Divergence Index in Distributed Databases with Replication

This post is basically a synopsis of database architecture/design I recently worked on for a RFP response.

Suppose that in a geographically distributed database deployment scenario, two databases (with copies of the same data) at geographically separated locations accept DMLs simultaneously. To ensure data convergence, these databases also engage in asynchronous bi-directional replication with each other along with standard measures like conflict detection and resolution. However, since the replication overhead is finite, at any instant in time, it is acceptable that a particular record in the database at one site is not available in the database at the other site. Let's assume that the total time taken for a record (after it is updated at the database at one site) to appear in the database at the other site is T. Thus T will comprise of the capture overhead at the source site, the network latency across sites and the apply overhead at the destination site. A very important consideration here is that the capture and apply processes at the databases are assumed to be not specific to tables - meaning that replication across any given pair of tables will undergo a total lag of T. This kind of an arrangement requires strict vigil on the replication throughput to ensure that severe data divergence does not occur. We need to develop metrics to quantify which site 'lags' and by how much. Let's give this metric a jazzy name - the 'Divergence Index' a.k.a DI. I'll put forward a simple approach toward calculating and interpreting the value of DI.

Oracle's documentation on Streams replication discusses the concept of a 'heartbeat table' that is something like this: assume that using some mechanism like NTP (network time protocol), the system date of the databases at both sites are synchronized. At both databases, we create a table 'heartbeat' with just two columns - a siteID (varchar) and a timestamp (defaults to the current time). Using a scheduled recurring job, we update (or insert) a record in this table. Thus this table will contain a record with values corresponding to that site's ID and the timestamp of the last update. Now, this table is configured as a publisher as well as a subscriber to the corresponding table of the other database. Therefore, at any instant in time, this table will tell us (i)when it was locally updated last and (ii)the timestamp of the most current update at the other database that has appeared locally. Neat, isn't it?. Note that this concept is nowhere specific to Oracle - you could do this with any decent RDBMS. So, what does this heartbeat table have to do with calculating DI?
Let's see.
DI measured at site A can be calculated as
DI(A) =( t(A) - t(B) ) / T
where,t(A) represents the highest value of the timestamp column with siteID = A andt(B) represents the highest value of the timestamp column with siteID = B

There are some very interesting and useful deductions possible from this. But before that, remember that the heartbeat tables are merely instrumented tables. The actual replication load is generated by other tables that are configured for application data. So, the updates on the heartbeat tables alone can never be of significance as far as calculating DI is concerned. Agreed? great!

Quite obviously, the ideal value of DI is 1.If DI > 1, either records from one database are taking longer than T to get applied at the other database or the scheduled update of the heartbeat table is not happening at the other site.If DI <> DI(B), updates from A reach B mach faster than they reach A from B - this means that the database at site B is relatively much more loaded with DMLs than A. This indicates that (possibly) the load balancing across databases is improper.

For DI to be an useful metric, it should be measured at an interval not less than the heartbeat update interval. A lot can be achieved by maintaining a history of the value of DI and charting them over a period of hours, days and weeks. For example, if you notice that over a period of time, the DI at both sites keep increasing, then you could additionally see, for a given site, say A, how the value of t(B) has changed over the same period. In the worst case, if t(B) has not changed (thereby DI has increased), it clearly means that A has stopped applying B's updates. If you notice similar behaviour at the other site, you could well have a total replication breakdown.

Sunday, October 25, 2009

How do touch-screen monitors recognize your touch?

There are three basic systems that are used to recognize a person's touch:
  • Resistive
  • Capacitive
  • Surface acoustic wave

The resistive system consists of a normal glass panel that is covered with a conductive and a resistive metallic layer. These two layers are held apart by spacers, and a scratch-resistant layer is placed on top of the whole setup. An electrical current runs through the two layers while the monitor is operational. When a user touches the screen, the two layers make contact in that exact spot. The change in the electrical field is noted and the coordinates of the point of contact are calculated by the computer. Once the coordinates are known, a special driver translates the touch into something that the operating system can understand, much as a computer mouse driver translates a mouse's movements into a click or a drag.

In the capacitive system, a layer that stores electrical charge is placed on the glass panel of the monitor. When a user touches the monitor with his or her finger, some of the charge is transferred to the user, so the charge on the capacitive layer decreases. This decrease is measured in circuits located at each corner of the monitor. The computer calculates, from the relative differences in charge at each corner, exactly where the touch event took place and then relays that information to the touch-screen driver software. One advantage that the capacitive system has over the resistive system is that it transmits almost 90 percent of the light from the monitor, whereas the resistive system only transmits about 75 percent. This gives the capacitive system a much clearer picture than the resistive system.

On the monitor of a surface acoustic wave system, two transducers (one receiving and one sending) are placed along the x and y axes of the monitor's glass plate. Also placed on the glass are reflectors — they reflect an electrical signal sent from one transducer to the other. The receiving transducer is able to tell if the wave has been disturbed by a touch event at any instant, and can locate it accordingly. The wave setup has no metallic layers on the screen, allowing for 100-percent light throughput and perfect image clarity. This makes the surface acoustic wave system best for displaying detailed graphics.

Source:- http://www.howstuffworks.com

Friday, October 23, 2009

To make the application user friendly to your customers.

Do you aware of the 'Usability Testing' which is a part of non-functional testing?
Usability Testing is to make the application user-friendly to your customers.
If your customers want to do usability testing in the application (or) want to know about Usability testing, let me know.

Wednesday, October 21, 2009

Siebel Mobile Client Debugging (Using Environment Variable)

We often come across errors and problems in Siebel application whose source cannot be easily identified. The standard spooling (/s method in the Target of the siebel exe) of queries is helpful many times.
But many other times there is need of more detailed logging than the one produced by simple spool.
I am listing an already existing very simple method of detailed logging here. Many of you might already be aware and using this method. I have always found this method gives me the exact source of the problem.
Ok so say you are getting an error, which cannot be linked to any configuration or any change you have done.

The steps to increase the logging detail are:
1. Right-Click My Computer select Properties.
2. Goto Advanced tab in the system properties.
3. Click on the environment variables
4. In the environment variables window, create a new system variable by clicking the New button
5. Add variable name as SIEBEL_LOG_EVENTS, the variable value can be 4 or 5. I would recommend using value 4 to start, if that is not helpful increase it to 5.
6. Restart the system after making this change.
7. Start the Siebel application, reproduce the problem which needs debugging.
8. Goto the Log folder in the Webclient directory, open the Siebel.log file (it will be large in size) present there.
9. Search for error in this log file.

IMPORTANT: Remember to remove this System Variable after you are done with your debugging, otherwise the size of the file will go on increasing and eat up you system memory. And yes you will again need to restart your system for the removal to take effect.

The size of the log file generated by using this method is quite large. It might become a bit difficult to handle these files if you are not used to handling very large files. You can use the wordpad to open these files which will be a little bit faster than usual notepad. I use a different method involving a file splitting tool. I will handle that in my next post.

Have a successful debugging!!!

Monday, October 19, 2009

How to print webpage without images and background colors?

Today tip will help you to print any website page in readable form (only text) without any extra graphics or images. There is a option on many websites "Print" to print a page in text format only, but if there is no print option then you can print out any webpage without its background colors and images using Internet Explorer setting.
Generally Internet Explorer setting "Print background colors and images" is disable, another advantage of printing webpage without background colors, you can speed up your printing process and also save printer ink. But important thing to always preview WebPages before you print, in Internet Explorer go to File menu, then click on Print Preview option.

1)To enable or disable print background colors option, open your system Internet Explorer.
2)Click the Tools menu and then go to Internet Options and open it. Here click the Advanced tab then scroll down to find the option Printing section.
3)Now check the option "Print background colors and images" then Apply and press Ok button.

Saturday, October 17, 2009

Shell script - Compare two files

#!/bin/bash
clear
ARGV=3
if [ $# -eq 3 ];
then
echo "The following lines are Missing in the Destination File $2" >$3
echo -e "#######################################################################################"echo -e "#\t Please wait…."
while read LINE
do
grep -F "$LINE" $2>/dev/null
if [ $? -eq 0 ];
then
echo "">/dev/null
else
echo "$LINE" >>$3
fi
done <$1
else
echo "Syntax Usage: ./filecompare.sh source destination output"
fi
echo -e "#\t Script Done"
echo -e "#\t `cat $3wc -l` lines are missing in the file $2. Output file is $3"
echo -e "#######################################################################################"

Thursday, October 15, 2009

JBOSS Default Ports Configuration

Below listed are Default ports which can see after starting the default JBOSS instance…….
——————————————————————————————————————
8009 Apache java portocol connector
8080 HTTP 1.1 Connector
1099 Naming Bootstrap
1098 Naming Remote Method invocation
4444 EJB Invoker
4445 Alernative Pooled EJB Invoker
8083 Class Loading Service
8093 Messaging UIL2
———————–
Clustering
———————–
1100 Clustered Naming Service
1102 Naming Discovery

Tuesday, October 13, 2009

Months as string in Cf

MonthAsString
Determines the name of the month that corresponds to month_number.
A string; the name of a month.
Syntax :
MonthAsString(month_number)


Parameter Description
month_number An integer in the range 1 - 12.

MonthAsString Example



More information about your date:



Your date, #DateFormat(yourDate)#.

It is #DayofWeekAsString(DayOfWeek(yourDate))#, day #DayOfWeek(yourDate)# in the week.

This is day #Day(YourDate)
# in the month of #MonthAsString(Month(yourDate))#, which has
#DaysInMonth(yourDate)# days.

We are in week #Week(yourDate)
# of #Year(yourDate)# (day #DayofYear(yourDate)# of
#DaysinYear(yourDate)#).



This is a leap year
This is not a leap year




Source : http://livedocs.adobe.com/coldfusion/6.1/htmldocs/functa46.htm#wp1109961

Sunday, October 11, 2009

DatePart CF function

DatePart
Extracts a part from a date value.
Part of a date, as an integer.

Syntax :
DatePart("datepart", "date")
Parameter Description datepart String:
yyyy: Year
q: Quarter
m: Month
y: Day of year
d: Day
w: Weekday
ww: Week
h: Hour
n: Minute
s: Second
l: Millisecond
When passing a date/time object as a string, you must enclose it in quotation
marks. Otherwise, it is interpreted as a numeric representation of a date/time object.



  • year: #DatePart("yyyy", todayDate)#
  • quarter: #DatePart("q", todayDate)#
  • month: #DatePart("m", todayDate)#
  • day of year: #DatePart("y", todayDate)#
  • day: #DatePart("d", todayDate)#
  • weekday: #DatePart("w", todayDate)#
  • week: #DatePart("ww", todayDate)#
  • hour: #DatePart("h", todayDate)#
  • minute: #DatePart("n", todayDate)#
  • second: #DatePart("s", todayDate)#



source : http://livedocs.adobe.com/coldfusion/6.1/htmldocs/functi60.htm#wp1103355

Friday, October 09, 2009

MVS SYSTEM CODES-S713

An error occurred in opening a data set on tape. 1. An attempt was made to output to the data set, before the expiration date specified had been reached. 2. The incorrect volume was requested.

Ref: www.ibmmainframes.com

Wednesday, October 07, 2009

Create Dblink Without Tnsnames Ora

It's possible to create a database link without having a alias in your tnsnames.ora file. This is beneficial when you use a remote database only for one time or when your tnsnames.ora is shared on a fileserver and you don't have the privileges to update the file.

create database link
connect to
identified by
using '(DESCRIPTION =
(ADDRESS_LIST = (ADDRESS =(PROTOCOL = TCP)
(HOST = )
(PORT = 1521)))
(CONNECT_DATA = (SID = )))'

Monday, October 05, 2009

MVS SYSTEM CODES-S714

An error occurred in closing a tape data set. 1. An I/O error occurred while writing a trailer label or tapemark. Rerun the job specifying another volume or device.

Ref: www.ibmmainframes.com

Saturday, October 03, 2009

SQL query tuning tips

“A solution is a state when you are tired of thinking“
This proverb indeed holds good for us in majority of the situations. The solutions that we provide to our customers have room for improvement by all means.
I have tried to list down a few of observations I made in my SQL performance tuning exercises. And I hope it is useful for the readers as well..

Using a Subset in SELECT:
It is always advisable to use the subset of fields that you require to process in a SELECT statement rather than *. Using a SELECT * consumes more resource and time in turn reducing the overall performance of the system.

IN / BETWEEN – Which clause works well for me ?
In case of a choice of using the IN or the BETWEEN clauses in the query, it is advantageous to use the BETWEEN clause, as it is much more efficient.
For example:
SELECT empid,empnameFROM employeeWHERE empid in (1,2,3,4,5,6,7,8,9,10);
is less efficient than:

SELECT empid,empnameFROM employeeWHERE empid BETWEEN 1 and 10;

Assuming there is a useful index on empid, the Query Optimizer can locate a range of numbers much faster (using BETWEEN) than it can find a series of numbers using the IN clause. As it is implied, checking for the list is going to go for N comparisons and BETWEEN would ideally be going for a check against the lower limit and the upper limit.
LIKE clauseIf LIKE is used in a WHERE clause, it is better to try to use one or more leading character in the clause, if at all possible.
For example :
Use
LIKE 'a%' not LIKE '%'
If a leading character is used in the LIKE clause, the query optimizer has the ability to potentially use an index to perform the query thereby, speeding performance. But if the leading character in a LIKE clause is a wildcard, a complete table scan has to be performed to process the query which in turn would bring down the performance.

DISTINCT clauseAt times this clause is added to every SELECT statement, even when it is not necessary. The DISTINCT clause should be used in SELECT statements when it is known that there would be duplicates and having duplicate rows in the result set would cause problems. DISTINCT would return the complete resultset to the temporary space, performs a SORT on the rows and eliminates the duplicates. So it uses the resources exhaustively.The DISTINCT clause reduces the efficiency if not used properly.

I would share some more in near future…Happy Reading !!!

Thursday, October 01, 2009

Top 10 most useful secret moves in Office products!!!

Here are my top 10 most useful secret ninja moves to increase your productivity and win friends and lovers.

1: Format painter (Office)The Format Painter tool replicates the formatting from one part of a document to another. So instead of manually redoing all the formatting yourself, you can use the Format Painter. First, select the text whose formatting you want to replicate. Then, click the Format Painter toolbar button. Finally, select the text you want to imbue with the format. For bonus points, you can double-click the Format Painter button to replicate the formatting to multiple areas of the document!

2: Paragraph in/out/up/down (Office)You can easily move a paragraph in four directions by pressing Alt+Shift+[Arrow]. To increase or decrease the indentation level of a paragraph or bullet point, press Alt+Shift+Right and Alt+Shift+Left respectively. To move a paragraph up or down, press Alt+Shift+Up or Alt+Shift+Down. This works especially well in PowerPoint, where it's common to reorder bullet points or change indentation levels.

3: Increase or decrease font size (Office)To quickly increase the font size of selected text, press Ctrl+Shift+>. To decrease the size, press Ctrl+Shift+<. I find it easy to remember these keyboard shortcuts because the one with the greater-than symbol increases the font size while the less-than symbol decreases it.

4: Quick Access Toolbar (Office)Office 2007 has a Quick Access Toolbar that can be customized to include buttons for your favorite commands. The Quick Access Toolbar is in the top left corner of many Office applications. You customize it by clicking on the drop-arrow on its right.

5: Fill handle (Excel)Excel can auto-fill cells in eerily smart ways. Instead of manually typing a sequence in cells, you can simply type the first few values of the sequence and drag the fill handle to auto-fill the rest of the cells. The fill handle is the little black square at the lower right corner of a selected cell's border. Drag it to automatically fill adjacent cells.
If you drag the fill handle with only one cell selected, it will repeat that cell's value into adjacent cells. However, if you drag the fill handle with multiple cells selected, Excel is smart enough to figure out the series. For instance, in the following example, Excel will fill subsequent cells with the increasing series of odd numbers. This even works for other types of series, like dates and percentages.

6: Moving and copying cells by dragging selection borders (Excel)Quite possibly the most useful yet completely undiscoverable feature in Excel is the ability to move and copy cells by dragging selection borders.
For instance, to move row four between rows one and two, select row four and drag the selection border while holding down the Shift key in order to insert it in its new position. If you drag the border without holding down the Shift key, the selected cells will instead replace the cells you drop them on. Conversely, if you hold down Ctrl while dragging a selection border, the selected cells are copied to their new location.

7: Status bar statistics (Excel)The status bar in Excel shows handy statistics when multiple cells are selected. In Excel 2007, the status bar shows the selected cells' average, count, and sum. This is an easy way to quickly analyze data without authoring formulas.

8: Clear formatting (Word and PowerPoint)To remove formatting from selected text, press Ctrl+Spacebar.

9: Advanced field search (Outlook)In Outlook, you can quickly search through a mail folder by using the Instant Search box. In addition to searching for keywords, you can do a fielded search by prefixing your search text with a variety of field names.
For instance, the above example searches for all mail from people named "jimmy" sent in May with attachments that have "jpg" in the filename. I most often use this feature for two things: to easily find email from a specific person, and to find specific attachments.

10: Presenter view (PowerPoint)PowerPoint has for many years had a great feature called Presenter View, which allows you as the presenter to see a different view of the presentation from your audience. In Presenter View, your monitor shows not only the slides, but also your notes as well as the current elapsed time in the presentation. This makes giving a presentation far easier. To enable Presenter view, go to the Slide Show ribbon and check Use Presenter View. In that same section, you can also change the monitor which the presentation is shown on. One note: the Use Presenter View checkbox can only be checked if you already have a second monitor connected and enabled.

Source: http://office.microsoft.com/en-us/help/HA102750211033.aspx

Tuesday, September 29, 2009

Convert a table to text in Word!!!

To convert a table into text:
Select the rows or the table you want to convert to text. Under Table Tools, on the Layout tab, within the Data group, click Convert to Text. Under Separate text at, click the option for the separator character that you want to use in place of the column boundaries. Word will automatically convert the rows or table into text.

Source: http://www.lockergnome.com/windows/2008/09/08/convert-a-table-to-text-in-word-2007/

Sunday, September 27, 2009

How handle exception in VB.NET ?

VB.NET has an inbuilt class that deals with errors. The Class is called Exception. When an exception error is found, an Exception object is created. The coding structure VB.NET uses to deal with such Exceptions is called the Try … Catch structure.

Syntax:TryCatch ex As ExceptionEnd TryThe Try word means "Try to execute this code". The Catch word means "Catch any errors here". The ex is a variable, and the type of variable it is an Exception object.

Example:Tryrt1.LoadFile ("C:\test10.txt", RichTextBoxStreamType.PlainText)Catch ex As Exception MsgBox (ex. Message) End Try

When you run your program, VB.net will try to execute any code in the Try part. If everything goes well, then it skips the Catch part. However, if an error occurs, VB.NET jumps straight to Catch and exception message in message box is executed.

Friday, September 25, 2009

Designing for Web 2.0

Designing for web 2.0 is nothing but making our design look simple,so that the pages download faster and making elements look very clear.For example, user larger font (font-size:12px) is the latest trend.Like-wise there are so many things which makes different from non-web2.0 websites.
Few of them are separating header from the content, Using cute icons, using larger font-size, etc,

Wednesday, September 23, 2009

Ingenium product Vs Mainframe Technology

Ingenium Knowledge
• Exposure to Domain and end to end knowledge of Policy Administration system
• Various Insurance Product Implementation / business processes exposure
• Specific Products knowledge is valued against technologies in the market
• Quick recognition and faster growth perspective
• Opportunity to play multiple roles and responsibilities based on experience and exposure

Open/Mainframe System Knowledge
• Limited to technology and not much exposure to domain
• Knowledge is restricted only towards technology / business process of that applications
• Niche technical skills alone are valued in the market
• Quick recognition and Growth perspective is not very encouraging
• Career Path is limited with pre-defined roles and responsibilities

Monday, September 21, 2009

Pseudo conversational transaction in CICS

Pseudo conversational transaction:
There are some advantages in CICS online system.

Multitasking: CICS allows multiple transactions (tasks) to execute at the same time
Multithreading: CICS allows multiple concurrent tasks to share the same program
Re-entrance: Programs running under CICS do not change themselves so that they can continue from where they left off after an interruption.

CICS –> Transaction to trigger application and It is also batch job to the mainframe.
Transaction –> 4 Character unique identification and all these transaction is controlled by control tables.

Saturday, September 19, 2009

Sample Procedure

To run procedure(proc) in sql+ or sql develpoer there are two methods:
1) begin
proc_name;
end;

2) proc proc_name;

Thursday, September 17, 2009

Handling Dropdown elements using Selenium IDE

Here is an example on how to handle Dropdown elements in selenium IDE.
Example:





Select From Dropdown











































































Select From Dropdown
store 58058 option1
store 30 index1
open http://pages.ebay.com/sitemap.html
select category0 label=Toys & Hobbies
storeSelectedLabel category0 label1
assertSelectedIndex category0 ${index1}
assertSelectedLabel category0 ${label1}
select category0 label=Computers & Networking
storeSelectedLabel category0 label2
assertSelectedLabel category0 ${label2}
assertSelectedValue category0 ${option1}




Tuesday, September 15, 2009

Different BitMapset Macros in CICS.

Mapset:
- Group of maps link edited together and mapset consisting of several maps
Map:
- Representation of one screen format

Different Macros:
DFHMSD - Mapset macro
DFHMDI - Map macro
DFHMDF - Field macro

Example:
DFHMSD - Mapset macro
Mapname DFHMSD TYPE = &&SYSPARM,
CTRL= (FREEKB, FRSET), LANG=COBOL, STORAGE=AUTO, TIOAPFX=YES, MODE=INOUT, TERM=3270
DFHMDI - Map macro
Mapname DFHMDI SIZE = (24,80), LINE=01, COLUMN=01,
CTRL=(FREEKB,FRSET)
DFHMDF - Field macro
DFHMDF POS= (01,01), LENGTH=4, INITIAL=‘SCR1’,
ATTRB=ASKIP

Sunday, September 13, 2009

General CICS commands.

CICS Commands Structure:
EXEC CICS CICS COMMAND OPTION (value) (Parameters as needed)END-EXEC.

OPTIONS:
RECEIVE
- Used to receive incoming data from the terminal. - A receiving area must be defined in the working storage section.
SEND - Used to send outgoing data to the terminal. - A receiving area must be defined in the working storage section and specified in FROM parameter.
RETURN - Used to terminate the transaction and return control to CICS.
XCTL - Used to pass control between application programs at same logical level.
LINK - Used to pass control between application programs. - Control passed from higher logical level to next lower logical level.
HANDLE AID - Used to specify paragraph name to which control is passed.

Friday, September 11, 2009

Oracle Data Management Solution

Oracle Site Hub is a location mastering solution that enables organizations to centralize site and location specific information from heterogeneous systems, creating a single view of site information that can be leveraged across all functional departments and analytical systems. Site Hub helps organizations eliminate the problem of distributed, fragmented, incomplete and inconsistent site data resulting from isolated silos of data, lack of centralized data repository, rapid business expansion or mergers and acquisitions.

What does it delivers
1. A pre-built extensible data model for mastering site information both internal and external such as competitor, supplier, customer sites
2. A single enterprise wide 360 degree view of the sites
3. Unlimited number of pre-defined and user-defined attributes for consolidating site-specific information
4. Mass maintenance capabilities to manage updates to multiple sites
5. Site mapping and view using Google Maps
6. Pre-built integration with Oracle Inventory, Oracle Property Manager and Oracle
7. Enterprise Asset Management to manage site-specific inventory, property lease and assets 8. Web services to consolidate and share site data across disparate systems and processes
http://www.oracle.com/master-data-management/site-hub.html

Wednesday, September 09, 2009

Cocomo, Build real-time social app. with Flex

Add social features to your existing Flex apps or build totally new ones, such as real-time productivity/collaboration apps, multiplayer games, and audio/video chat.

Features of the Cocomo beta include the following:
  • VoIP Audio
  • Webcam Video
  • Chat
  • Multi-User Whiteboards
  • Real-Time File Sharing
  • User Management
  • Roles and Permissions
  • Robust Data Messaging

To get started:
To get access to the Cocomo service and Cocomo SDK, you will need to create a developer account. Follow these steps to create a developer account:

1.Navigate to the Developer Portal (http://cocomo.acrobat.com/)
2.Enter your existing Adobe ID or create a new Adobe ID with different email address and password. Your Cocomo developer account will be automatically created based on your Adobe ID.
3.Download and unzip the Cocomo SDK, check out the documentation, and start developing.
4.Ask questions and share your feedback in the Cocomo forums

Monday, September 07, 2009

Example for accessing a control in the master page from a content page

The following code shows an example that accesses a control in the master page from a content page.

<%@ master language="C#" %>


Master Page














Left Navigation












ref:devx

Saturday, September 05, 2009

How to access the Header control from a content page

<%@ page language="C#" master="~/ExposeHeader.master" %>


This content is generated from the content page.

ref:devx

Thursday, September 03, 2009

Accessing super-super class variables

In core java, Sub-classes can use super keyword to access the shadowed variables in super-classes. This technique allows for accessing only the immediate super-class. super.super is not valid. But casting the 'this' reference to classes up above the hierarchy will do the trick. By this way, variables in super-classes above any level can be accessed from a sub-class, since variables are resolved at compile time, when we cast the 'this' reference to a super-super-class, the compiler binds the super-super-class variable. But this technique is not possible with methods since methods are resolved always at runtime, and the method gets called depends on the type of object, not the type of reference variable. So it is not at all possible to access a method in a super-super-class from a subclass.

Example:
class A{
int c=1;
public void disp(){
System.out.println("A");
}
}

class B extends A{
int c=2;
public void disp(){
System.out.println("B");
}
}

class C extends B{
int c=3;
public void disp(){
System.out.println("C");
}

void demo(){
disp();
super.disp();
((A)this).disp();
System.out.println(c);
System.out.println(super.c);
System.out.println(((A)(this)).c);
}
}
public class G{
public static void main(String args[]){
new C().demo();
}
}

Output:-
C
B
C
3
2
1

Tuesday, September 01, 2009

Want to browse the web from Outlook

How great it will be if you are able to browse the web from outlook.Yes,you can surf the web without leaving your outlook.
Find the coolest information here.
To surf the web you need web toolbar,so display the web toolbar you have to go to view menu,toolbar submenu,then select web.
Now you can find web toolbar below menu option .Enter the web address in web toolbar and hit enter key.
You can see the main screen becomes browser,but oulook navigation pane on left side will be as it is..
To return to outlook you just have to click the navigation pane.
That's it.You have discovered browser in oulook.How cool is it!!

Saturday, August 29, 2009

Automate Web Service Testing the Right Way

Web services Web services are perfect candidates for automated testing. Compared with validating a UI, Web services Web services testing is quite simple: send a request, get a response, verify it. But it's not as easy as it may look. The main challenge is to identify the formal procedures that could be used for automated validation and verification. Other problems include dynamic data and differing request formats.

In the project our team was working on when this was written, there were many different Web services in need of testing. We needed to check not only the format of the request and response, but also the business logic, data returned by the services and the service behavior after significant changes were made in the architecture. From the very beginning we intended to automate as many of these tests as possible. Some of the techniques we used for automated verification of Web services functionality were as follows:

1.Response schema validation.
This is the most simple and formal procedure of response structure verification. There are free schema validators out there that can easily be built into automated scripts. However, schema validation is not sufficient of you also need to validate the Web services logic based on data returned from a service.

2.Comparison of the actual response with the expected response.
This is a perfect method for Web service regression testing because it allows for checking of both response structure and data within the response. After the successful manual validation, all valid responses are considered correct and saved for future reference. The response of all next versions of that Web service will then be compared with these template files. There is absolutely no need to write your own script for XML file comparison; just find the most suitable free tool and use it within your scripts. However, this method is not applicable when dealing with dynamic data or if a new version of Web services involves changes in the request structure or Web services architecture.

3.Check XML nodes and their values.
In the case of dynamic data, it can be useful to validate only the existence of nodes using XPath query and/or check the node values using patterns.

4.Validate XML response data against original data source.
As a “data source” it’s possible to use database, another service, XML files, non-XML files and in general, everything that can be considered a “data provider” for Web services. In combination with response schema validation, this method could be the perfect solution for testing any service with dynamic data. On the other hand, it requires additional skills to write your own scripts for fetching data from data source and comparing it with service response data.

5.Scenario testing.
This is used when the test case is not a single request but a set of requests sent in sequence to check Web services behavior. Usually the Web services scenario testing includes checking one Web service operation using another. For example, you can check that the CreateUser request works properly by sending a GetUser request and validating the GetUser response. In general, any of the above techniques can be used for Web services scenarios. Just be careful to send requests one after another in the correct order. Also be mindful of the uniqueness of test data during the test. The service might not allow you to create, for example, several users with the same name. It’s also common for one request in a sequence to require data from a previous response. In this case you need to think about storing that data and using it on the fly.

All of these techniques were implemented using a home-grown tool which we were using in our day-to-day work. Using that tool, we are able to automate about 70 percent of our test cases. This small utility that was originally created by developers for developers to cover typical predefined test conditions and gradually evolved into rather powerful tool. Having such a tool in your own organization could help your testing efforts well into the future.

Source: http://www.stpmag.com

Thursday, August 27, 2009

W3C XML schema

XML schema is some other XML file which like DTD defines the type of document contents. Ths most famous is W3C XML schema but there could other means to declare the document. An example below shows generic XML schema content. Its root element is schema. Besides namespace-prefix mapping it can contains some set of attributes. Here we enable full-qualified names for elements and names only (without namespace prfixes) for attributes:


http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">





source: java-tips.org

Tuesday, August 25, 2009

User Extension for gotoLabel command

We can use loop concepts in Selenium IDE:
Here is the user extension for gotoLabel command.

Selenium.prototype.doGotolabel = function( label ) {
if( undefined == gotoLabels[label] ) {
throw new Error( "Specified label '" + label + "' is not found." );
}
this.continueFromRow( gotoLabels[ label ] );
};

Sunday, August 23, 2009

Increase your system performance

We all like the colourful Windows XP desktop. But this GUI (graphical user interface) is using a lot of system resources.You can optimize your MS Windows XP performance by disabling some of these visual effect.

To optimize your Windows XP:-
1. Click Start => Setting => Control Panel
2. Click System => Advance Tab
3. Click Settings button under Performance
4. Under Visual Effects tab, select Adjust for best performance (all the check boxes will be unchecked)
5. Scroll down the list and check “Use Common Tasks in Folders”
6. Click OK and OK again.

Your Windows XP will now has less colourful and lesser visual effect and it will look like MS Windows 98 but do not forget that your system performance would have been by increased now !!!

Source: www.techiecorner.com

Friday, August 21, 2009

Example for gotoLabel command in Selenium IDE

Here is the example for gotoLabel command. When Selenium IDE encounters gotoLabel command, it searches for targetted label name in the rest of the script and passes the control to targetted Label and the executes the steps from Label command and skips the steps that are in between gotoLabel and Label commands. When the targetted label is not found it throws error.

Extension for Label Command:
Selenium.prototype.doLabel = function(){};

Example:


http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
http://selenium-ide.openqa.org/profiles/test-case">

http://www.google.co.in/" />
New Test

























































New Test
open http://www.google.co.in/
verifyText link=Go to Google.com Go to Google.com
gotolabel label1
clickAndWait link=Go to Google.com
verifyTextPresent this wont execute
clickAndWait link=Go to Google India
label label1
verifyTitle Google




Wednesday, August 19, 2009

Learn Vocabulary through SMS

Do you want to imrove your vocabulary ,I guess a word a day will help you.
Here are few internet sites which will send you a word a day thru SMS.

http://labs.google.co.in/smschannels/subscribe/wordoftheday
http://www.kaaledge.com

Do register your mobile in these sites and improve your vocabulary.

Monday, August 17, 2009

Restarting Windows Without Restarting Your PC!!!

A modern PC with Vista Home Edition takes about one and a half minutes to boot. An older machine with XP is about the same. That’s 30 seconds for the PC itself (the BIOS) to boot up, plus a minute for the Windows operating system to boot.

Sometimes, you need to reboot Windows (e.g. when installing new software), but there is no need to restart BIOS, too. However, the default is to reboot both. (That’s called doing a “cold boot,” rather than a “warm boot.”) There’s a trick that works on both XP and Vista to get it to do a warm boot instead, thus saving you 30 seconds per cycle.

The trick is to hold down the SHIFT key when invoking the restart.

Windows Vista:
Select Start, then hover over the right arrow that is to the right of the padlock icon until the pop-up menu appears that contains “restart” as one of it’s choices. Hold down the SHIFT key while clicking on the “restart” choice.

Windows XP:
Select Start. Select “Shut Down…”. Change the drop-down combo box under “What do you want the computer to do?” to “Restart”. Hold down the SHIFT key while clicking on the “OK” button.

Source: http://pcpandit.com/index.php/windows/restarting-windows-without-restarting-your-pc.html

Saturday, August 15, 2009

Generating random number

First you would need to create an instance of Random class:
Random random = new Random();
Then, you can get your random number by calling:
int pick = random.nextInt(maxvalue);

This would return a value from 0 (inclusive) to maxvalue (exclusive).

For a more cryptographically strong pseudo random generator you may check out java.security.SecureRandom class. Here the caller may specify the algorithm name and (optionally) the package provider. Here is a sample code of using SecureRandom class:

SecureRandom random = SecureRandom.getInstance("SHA1PRNG");
random.setSeed(seed);
int randInt = random.nextInt(maxvalue);

source:java-tips.org

Thursday, August 13, 2009

PureMVC Framework for JavaScript Available

PureMVC has been ported to JavaScript !

Download the Javascript port from the following links.
PureMVC Port for JavaScript - http://trac.puremvc.org/PureMVC_JS PureMVC JS Employee Admin - http://trac.puremvc.org/Demo_JS_EmployeeAdmin

Tuesday, August 11, 2009

Nesting Master Pages

There are times where you may want to provide overall branding and appearance for your Web site, but at the same time provide sub-sites whose appearance must be consistent. To accomplish this, you need to nest one master page within another page, a process called "Nesting Master Pages". Nesting support is built-in, which means you don't have to do anything special to reap the advantages of nested master pages; a content page that uses a sub-master page will automatically receive content from all the master pages in the hierarchy.

Using the master pages architecture, you could implement a consistent look and feel across all the developer centers. For example, you can have the main MSDN page derive from a root master page. Each developer center can have its own master page, each of which uses the root master page as its master. This means a content page in any of the developer centers will inherit the root master page look and feel settings that provide overall MSDN branding, and will also inherit the custom look and feel specific to that developer center. This nested approach provides each developer center with the freedom to develop customized content while maintaining a consistent overall branding for the entire site.

ref:devx

Sunday, August 09, 2009

Configuring Master Pages

So far, you've used the master attribute of the Page directive in the content pages to specify the name of the master page. Even though this approach works, it requires you or your developers to specify the master attribute in each page. You can eliminate that requirement by specifying the name of the master file in the web.config file under the pages element. After adding the entry to your web.config file, all the pages in that Web application will automatically use the designated master page. For example, the following web.config file entry specifies that all the pages in the Web application should use IntroMaster.master as their default master page.







You're not limited by setting the default master page in the web.config file. Even when you use this method to specify the name of a default master page, you can still override the global value by specifying a different master page in the master attribute of the Page directive. Any values you specify using the Page directive takes precedence over the web.config file entry.

To sum up, ASP.NET's new Master Pages feature provides a clean approach to encapsulate common functionality and content a centralized location, allowing other pages to inherit from those master pages, thereby greatly reducing the maintenance. Using master pages, you can also create one set of controls and code and apply the results to all your content pages. Apart from providing a fine-grained control over the layout of the content pages, master pages also expose an object model that allows you to access the master page controls, properties and methods from content pages.

ref:devx

Friday, August 07, 2009

Ten things you might not know about Google

1) The name Google is a spelling error. The founders of the site, Larry page and Sergey Brin, thought they were going for 'Googol.' Googol is the mathematical term for 1 followed by 100 zeros. The term was coined by Milton Sirotta, nephew of American mathematician Edward Kasner, and was popularized in the book, Mathematics and the Imagination by Kasner and James Newman. Google's play on the term reflects the company's mission to organize the immense amount of information available on the web. Initially, Larry and Sergey Brin called their search engine BackRub, named for its analysis of the of the web's "back links." The search for a new name began in 1997, with Larry and his officemates starting a hunt for a number of possible new names for the rapidly improving search technology.
2) The reason the google page is so bare is because the founder didn't know HTML and just wanted a quick interface. Due to the sparseness of the homepage, in early user tests they noted people just kept sitting staring at the screen, waiting for the rest to appear. To solve the particular problem the Google Copyright message was inserted to act as an end of page marker.
3) Google started as a research project by Larry page and Sergey Brin when they were 24 and 23 years respectively. Google's mission statement is to organize the world's information and make it universally accessible and useful. The company's first office was in a garage, in Menlo Park, California. Google's first employee was Craig Silverstein, now Google's director of technology. The basis of Google's search technology is called PageRank that assigns an "importance" value to each page on the web and gives it a rank to determine how useful it is. However, that is not why it is called PageRank. It is actually named after Google co-founder Larry Page.
4) Google receives about 20 million search queries each day from every part of the world, including Antarctica and Vatican. You can have the Google homepage set up in as many as 116 different languages –including Urdu, Latin, Cambodia, Tonga, and Yoruba. In fact, Google has the largest network of translators in the world.
5) In the earliest stage of Google, there was no submit button, rather the Enter key needed to be pressed.Google has banned computer-generated search requests, which can sop up substantial system resources and help unscrupulous marketers manipulate its search rankings.
6) The Google's free web mail service Gmail was used internally for nearly two years prior to launch to the public. The researchers found out six types of email users, and Gmail has been designed to accommodate these six. The free e-mail service recently changed its name for new UK users. Following a trademark dispute with a London-based Independent International Investment Research, the mail account has been renamed Google Mail.
7) It would take 5,707 years for a person to search Google's 3 billion pages. The Google software does it in 0.5 seconds. Google Groups comprises more than 845 million Usenet messages, which is the world's largest collection of messages or the equivalent of more than a terabyte of human conversation
8) The logos that appear on the Google homepage during noteworthy days and dates and important events are called Google Doodle. The company has also created an online museum where it has all the logos it has put on various occasions so far.Dennis Hwang, a Korean computer artist in the United States, is the guy behind these witty Doodles. Hwang has been drawing the face of Google for over two years.
9) You have heard of Google Earth, but not many know there is a site called Google Moon, which maps the Lunar surface. Google Moon is an extension of Google Maps and Google Earth that, courtesy of NASA imagery, enables you to surf the Moon's surface and check out the exact spots that the Apollo astronauts made their landings
10) Keyhole, the satellite imaging company that Google acquired in October 2004 was funded by CIA.Keyhole's technology runs Google's popular program Google Earth that allows users to quickly view stored satellite images from all around the world.

Wednesday, August 05, 2009

Folder Option Missing

Many of us sometimes find the folder option missing in the windows explorer.
Here is the solution—>

1.Open Run and Type "gpedit.msc"
2.Now goto User Configuration>Administrative templates>Windows Component>Windows Explorer
3.Click on windows Explorer you will find the thrid option on the right side of screen "Removes the Folder Option menu item from the tools menu"
4.just check it,if it is not configured then change it to enable by double clicking on it and after applying again set it to not configured.
5.I hope that you will find the option after restarting windows.

Monday, August 03, 2009

Multi Google Talk

Just follow the simple steps Below:

1.Right click on google talk shortcut,
2.click on properties
3.Go to shortcut tab on google talk properties window
4.on the target textbox,add in the /nomutex to the end of the line so that it looks like below(or you can simply copy and paste the below syntex and replace the original)
"c:\program files\google\google talk\googletalk.exe" /nomutex
5.click on ok

I didnt have to do anything after this and clicking on the shortcut multiple times just gave me different google talk window.

Saturday, August 01, 2009

How Do You Speed Up Flex Builder?

Here is a article written by Brian Deitte(http://www.deitte.com/archives/2006/12/about_this_blog.htm) , explaining how to speed flex builder

Here are some of things we do:
1.Build every application in one project using multiple source paths (instead of using extra library projects)
2.Build parts of the applications as SWCs (instead of referencing their source paths)
3.Close extra projects
4.Use a system font instead of embedding fonts
5.Run "eclipse -clean" occasionally
6.Turn off "Copy non-embedded files to source folder"
7.Turn off "Build Automatically"

Things we haven't tried or just trying now and which may be helpful:
1.Build a lot of the application as SWCs or anything as an RSL
2.The Hellfire compiler (http://stopcoding.wordpress.com/2008/06/17/hellfire_compiler/)3.Use the Flex 4 SDK (or just the compiler portion) with Flex Builder
4.Merge some of the many Flex 4 compiler performance changes into a Flex 3 SDK, and using this in Flex Builder

Thursday, July 30, 2009

Want to Add your site to all search engines.

Many people designing websites today,but if it is not known to others ,there is no use in that.So everyone wants to add their sites in search engines ,so that people came to know the websites.
i will give you some list of search engines url submission link,try this link and submit your urls.Your site will be indexed in all search engines in less time and your pages will be displayed in the search results.

Google - http://www.google.com/addurl/
Yahoo - https://siteexplorer.search.yahoo.com/submit
MSN/LIVE - http://search.live.com/docs/submit.aspx
Cipinet - http://cipinet.com/addurl/
Alexa - http://www.alexa.com/site/help/webmasters#crawl_site
Aesop - http://www.aesop.com/cgi-bin/sub/submiturl.cgi
Burf - http://www.burf.com/submit.php
guruji - http://dir.guruji.com/misc/SubmitSite.php
Accoona - http://www.accoona.com/public/submit_website.jsp
Entireweb - http://www.entireweb.com/free_submission/
FyberSearch - http://www.fybersearch.com/add-url.php
MixCat - http://www.mixcat.com/addurl.php
OneSeek - http://www.oneseek.com/listings.htm
WhatUseek - http://www.whatuseek.com/addurl.shtml
Scrub The Web - http://www.scrubtheweb.com/addurl.html
Search Site - http://searchsight.com/submit.htm
SonicRun - http://www.sonicrun.com:8081/add
Abacho - http://www.uk.abacho.com/anmelden.html#nogo
Acoon.com - http://www3.acoon.com/addurl.html
Amfibi - http://addurl.amfibi.com/
homerweb - http://www.homerweb.com/submit_site.html
JGDO - http://www.jdgo.com/add.html
Myahint - http://www.myahint.com/addurlmyahint.html
Walhello - http://www.walhello.com/addlinkgl.html
Stopdog - http://www.stopdog.com/submit
Searchengine.com - http://www.searchengine.com/List_Your_Site/Basic_Submit/
eXactBot - http://www.campubco.com/cgi-bin/exactsearch.cgi?action=showadd
Megaglobe - http://www.megaglobe.com/urlSubmit
Find Once - http://www.findonce.co.uk/submit/
Net Search - http://www.netsearch.org/adds/addurl.php
Susy Search - http://www.susysearch.com/addsite/

Try this links and make your site popular..
Computers Add to Technorati Favorites Programming Blogs - BlogCatalog Blog Directory