Websphere interview Questions


Published on

websphere interview questions

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Websphere interview Questions

  1. 1. What is WAS à Provides the infrastructure for running applications that run your business. à Common environment and programming model for your applications. àPlatform for developing and Deploying web services and SOA based apps à Secure, Scalable, reliable transaction engine for ERP à IBM WebSphere is architected to enable you to build business-critical applications for the Web à WebSphere includes a wide range of products that help you develop and serve Web applications. à They are designed to make it easier for clients to build, deploy, and manage dynamic Web sites more productively à WAS implements J2EE specification WebSphere Application Server provides the environment to run your Web-enabled e- business applications. An application server functions as Web middleware or a middle tier in a three-tier e-business environment. The first tier is the HTTP server that handles requests from the browser client. The third tier is the business database (for example, DB2 UDB for iSeries) and the business logic (for example, traditional business applications, such as order processing). The middle tier is WebSphere Application Server, which provides a framework for a consistent and architected link between the HTTP requests and the business data and logic.
  2. 2. With the Base and Express packages, you are limited to single application server environments. The Network Deployment package allows you to extend this environment to include multiple application servers that are administered from a single point of control and can be clustered to provide scalability and high availability environments. The typical application flow is as follows: 1. A Web client requests a URL in the browser (input page). 2. The request is routed to the Web server over the Internet. 3. The Web server immediately passes the request to the Web server plug-in. All requests go to the Web server plug-in first. 4. The Web server plug-in examines the URL, verifies the list of host name aliases from which it will accept traffic based on the virtual host information, and chooses a server to handle the request. 5. A stream is created. A stream is a connection to the Web container. It is possible to maintain a connection (stream) over a number of requests. The Web container receives the request and, based on the URL, dispatches it to the proper servlet. 6. If the servlet class is not loaded, the dynamic class loader loads the servlet (servlet init(), then doGet() or doPost()). 7. JNDI is used for lookup of either datasources or EJBs required by the servlet. 8. Depending upon whether a datasource is specified or an EJB is requested, the JNDI directs the servlet: – To the corresponding database and gets a connection from its connection
  3. 3. pool in the case of a data source. – To the corresponding EJB container, which then instantiates the EJB when an EJB is requested. 9. If the EJB request involves an SQL transaction, it goes back to the JNDI to look up the datasource. 10.The SQL statement is executed and the retrieved data is sent back either to the servlet or to the EJB. 11.Data beans are created and handed off to JSPs in the case of EJBs. 12.The servlet sends data to JSPs. 13.The JSP generates the HTML that is sent back through the plug-in to the Web server. 14.The Web server sends the output page (output HTML) to the browser. Functionality of WAS WebSphere Application Server supports asynchronous messaging through the use of a JMS provider and its related messaging system.(JMS 1.1 Messaging Provider) WebSphere Application Server provides authentication and authorization capabilities to secure administrative functions and applications, using LDAP WebSphere Application Server works with a Web server (such as the IBM HTTP Server) to route requests from browsers to the applications that run in WebSphere Application Server. Web server plug-ins are provided for installation with supported Web browsers. The plug-ins direct requests to the appropriate application server and perform workload balancing among servers in a cluster. Web services enable businesses to connect applications to other business applications, deliver business functions to a broader set of clients and partners, interact with marketplaces more efficiently, and create new business models dynamically. Delivers a high performance and extremely scalable transaction engine for dynamic e-business applications Packaging WebSphere Application Server is available in multiple packaging options. WebSphere Application Server - Express V6.0 à Single Server environment.(No Clustering or multi server management) à J2EE 1.4 support àMedium-sized business
  4. 4. àContains Rational Web Developer application tool à Doesn’t handle EJB and JCA à Limited to 2 CPU’s WebSphere Application Server V6.1 (Base) àSlightly differs in packaging and licensing à Contains Application Server toolkit à Includes a trial version of Rational Application Developer àUnlimited CPU’s WebSphere Application Server Network Deployment V6 àExtends Base version àClustering capabilities àEdge Components which provide high performance and availability (Caching Proxy and Load Balancer) àHA for distributed configurations àLarge Enterprise applications àScalability, Availability and Performance àWeb Server plug-in supports weighted WLM àAll V6 application servers have the same core and base functionality àWebSphere Application Server - Express V6 node can be upgraded to a WebSphere Application Server V6 node(.Can be done without any software upgrades .Only a paper license upgrade is required) àWebSphere Application Server- Express V6 and WebSphere Application Server V6 node can be federated into a WebSphere Application Server - Network Deployment V6 cell (Can be done without any software upgrades .Only a paper license upgrade is required) Differences b/n WAS Version WAS 5: J2EE 1.2/1.3 support JDK 1.3 support Web Services based on Apache engine WAS 6.0: J2EE 1.2/1.3/1.4 support JDK 1.4 support (JDK 1.4.2) Web Services based on J2EE 1.4 High Availability Manager Java Based Messaging Engine
  5. 5. EJB 2.1, JMS 1.1, JCA 1.5, Servlet 2.4, and JSP 2.0 Supports Java Server Faces (JSF) Creates Archive of the existing WAS configurations and the archive can be used to create new configurations. Profiles and all profiles use same WebSphere binaries(Less storage) Node groups Service integration functionality provides both message-oriented and service Oriented applications WAS 6.1: J2EE 1.2/1.3/1.4 support JDK 5.0 support JSF-a framework for Web applications Integrated Console Security changes Secure and Scalable runtime Edge Components Using Edge components can reduce Web server congestion, increase content availability, and improve Web server performance. As the name indicates, Edge components usually run on machines that are close (in a network configuration sense) to the boundary between an enterprise’s intranet and the Internet. Web container àA Web container, which processes HTTP requests, servlets, and JavaServer Pages (JSPs) à Web container transport chains: Requests are directed to the Web container using the Web container inbound transport chain. The chain consists of a TCP inbound channel that provides the connection to the network, an HTTP inbound channel that serves HTTP 1.0 and 1.1 requests, and a Web container channel over which requests for servlets and JSPs are sent to the Web container for processing à Servlet processing When handling servlets, the Web container creates a request object and a response object, then invokes the servlet service method. The Web container invokes the servlet’s destroy method when appropriate and unloads the servlet, after which the JVM performs garbage collection. à HTML and other static content processing Requests for HTML and other static content that are directed to the Web container are served by the Web container inbound chain. However, in most cases, using an external Web server and Web server plug-in as a front-end to a Web container is more appropriate for a production environment.
  6. 6. _ àSession management Support is provided for the javax.servlet.http.HttpSession interface as described in the Servlet application program interface (API) specification. _ à Web services engine Web services are provided as a set of APIs in cooperation with the J2EE applications. Web services engines are provided to support Simple Object Access Protocol (SOAP). EJB Container àThe Enterprise JavaBeans (EJB) container provides all the runtime services that are needed to deploy and manage enterprise beans. It is a server process that handles requests for both session and entity beans. àThe enterprise beans, packaged in EJB modules, installed in an application server do not communicate directly with the server. Instead, the EJB container provides an interface between the enterprise beans and the server. Together, the container and the server provide the enterprise bean runtime environment. àThe container provides many low-level services, including threading and transaction support. From an administrative viewpoint, the container manages data storage and retrieval for the contained enterprise beans. A single container can host more than one EJB Java archive (JAR) file. WAS Services J2EE Connector Architecture services Transaction service Dynamic cache service Message listener service Object Request Broker service Administrative service (Java Management Extensions) Diagnostic trace service Debugging service Name service (Java Naming Directory Interface) Performance Monitoring Interface service Security service (JAAS and Java 2 security) Service Integration Bus service The Web server: A Web server handles the HTTP protocol. When the Web server receives an HTTP request, it responds with an HTTP response, such as sending back an HTML page. To process a request, a Web server may respond with a static HTML page or image, send a redirect, or delegate the dynamic response generation to some other program such as CGI scripts, JSPs (JavaServer Pages), servlets, ASPs (Active Server Pages), server-side JavaScripts, or some other server-side technology. Whatever their
  7. 7. purpose, such server-side programs generate a response, most often in HTML, for viewing in a Web browser. Understand that a Web server's delegation model is fairly simple. When a request comes into the Web server, the Web server simply passes the request to the program best able to handle it. The Web server doesn't provide any functionality beyond simply providing an environment in which the server-side program can execute and pass back the generated responses. The server-side program usually provides for itself such functions as transaction processing, database connectivity, and messaging. While a Web server may not itself support transactions or database connection pooling, it may employ various strategies for fault tolerance and scalability such as load balancing, caching, and clustering—features oftentimes erroneously assigned as features reserved only for application servers. Eg: Apache HTTP Server, Sun ONE Web Server, iPlanet Web Server The application server: As for the application server, according to our definition, an application server exposes business logic to client applications through various protocols, possibly including HTTP. While a Web server mainly deals with sending HTML for display in a Web browser, an application server provides access to business logic for use by client application programs. The application program can use this logic just as it would call a method on an object (or a function in the procedural world). Such application server clients can include GUIs (graphical user interface) running on a PC, a Web server, or even other application servers. The information traveling back and forth between an application server and its client is not restricted to simple display markup. Instead, the information is program logic. Since the logic takes the form of data and method calls and not static HTML, the client can employ the exposed business logic however it wants. In most cases, the server exposes this business logic through a component API, such as the EJB (Enterprise JavaBean) component model found on J2EE (Java 2 Platform, Enterprise Edition) application servers. Moreover, the application server manages its own resources. Such gate-keeping duties include security, transaction processing, resource pooling, and messaging. Like a Web server, an application server may also employ various scalability and fault-tolerance techniques. Difference between AppServer and a Web server : (1) Webserver serves pages for viewing in web browser, application server provides exposes businness logic for client applications through various protocols
  8. 8. (2) Webserver exclusively handles http requests.application server serves bussiness logic to application programs through any number of protocols. (3) Webserver delegation model is fairly simple,when the request comes into the webserver,it simply passes the request to the program best able to handle it(Server side program). It may not support transactions and database connection pooling. (4) Application server is more capable of dynamic behaviour than webserver. We can also configure application server to work as a webserver.Simply applic! ation server is a superset of webserver. In J2EE application modules are packaged as EAR, JAR and WAR based on their functionality .These files are simply zipped files using java jar tool. These files are created for different purposes. .jar files: JAR files (Java ARchive) allows aggregating many files into one, it is usually used to hold Java classes in a library. i.e. Math.jar These files are with the .jar extension. The .jar files contain the libraries, resources and accessories files like property files. .war files: WAR files (Web Application aRchive) stores XML, java classes, and JavaServer pages for Web Application purposes. These files are with the .war extension. The war file contains the web application that can be deployed on the any servlet/jsp container. The .war file contains jsp, html, javascript and other files for necessary for the development of web applications. .ear files: EAR files (Enterprise ARchive) combines JAR and WAR files to make a combined archive for Enterprise Applications. The .ear file contains the EJB modules of the applications
  9. 9. 1. Roles & Responsibilities 2. Explain your work in your previous environment (Your script) 3. What is wsadmin / jacl scripting WSADMIN is a scripting interface (or command-line interface) into WebSphere Application Server that permits the automation of many different tasks that we can do using a (web interface) or graphical user admin console. JACL scripting is the scripting language that is supported by the WebSphere Application Server to administer or write any custom-based task. What are the different wsadmin objects. AdminConfig AdminControl AdminApp AdminTask Help How do you invoke wsadmin command Go to the appropriate <profile_home> and type wsdmin. How do you execute a jacl script >wsadmin -f myScript.jacl What did you use wsadmin / jacl scripting for. 4. Explain Session affinity: Most servers use the term "Session Affinity" to indicate that within a cluster of servers, requests from the same client always get routed back to the same server. (or) In a clustered environment, any HTTP requests associated with an HTTP session must be routed to the same Web application in the same JVM. Session Persistance: You use session persistence to permanently store data from an HTTP session object to enable failover and load balancing across a cluster of WebSphere Applicaiton Servers. Sessiontracking: Session tracking enables you to track a user's progress over multiple servlets or HTML pages, which, by nature, are stateless. How do you set session time out :
  10. 10. You can specify an interval of time after which HTTP sessions expire. click Servers > Application servers > server_name > Web container settings > Session management > Session Timeout What are the different levels at which session timeout can be set application level, web module level, server level 5. How do you upgrade WAS GUI Upgrade Silent Upgrade Logs files and their paths for both 6. Back Ups How do you take back ups in WAS backupConfig.sh [filename] -nostop What is the out put file WebSphereConfig_yyyy-mm-dd.zip How do you restore back ups restoreConfig.sh <filename.zip> -nostop What is the Backup policy in your previous company Incremental Backups every week. 7. Explain profiles and what is the equivalent command in WAS 5.x In WAS 5.x ----> wsInstance.sh -name instanceName -path instanceLoacation -host hostName -create | delete 8. What are the different kinds of sync operations 1. Automatic synchronization. 2. Manual synchronization. 3. Startup synchronization. How do you disable auto sync System Administration > nodeagent > file synchronization service > Uncheck automatic synchronization. What is the default interval for auto sync 60 seconds. 9. What are the different UserRoles in WAS 1. Monitor 2. Operator 3. Configurator 4. Administrator
  11. 11. 10. Explain JNDI in WAS Each application server hosts a name service that provides a Java Naming and Directory Interface (JNDI) name space. The service is used to register resources hosted by the application server. The JNDI implementation in WebSphere Application Server is built on top of a Common Object Request Broker Architecture (CORBA) naming service (CosNaming). JNDI provides the client-side access to naming and presents the programming model that application developers use. CosNaming provides the server- side implementation and is where the name space is actually stored. JNDI essentially provides a client-side wrapper of the name space stored in CosNaming and interacts with the CosNaming server on behalf of the client. Simple Simple name The simple name binding is guaranteed to succeed if lookup is within the same server or when connected directly to the name space of the server containing the target of the lookup. It can be used in a servlet or EJB, if it is certain that the object is located on the same application server. Here is an example of a simple name: ejb/webbank/Account Corba Corbaname The corbaname binding is always guaranteed to work. However, it requires that you know the correct path to the object at deployment time. Here is an example of a corbaname: corbaname::myhost1:9812/NameServiceServerRoot#ejb/webbank/Account Complex names Compound name/remote/complex Applications that do not run in the same server cannot use simple name lookup because the simple name is not local to the application. Instead, an application of this type must look the object up directly from the name server. Each application server contains a name server. System artifacts such as EJB homes are bound relative to the server root context in that name server. The fully qualified (compound name) JNDI name is always guaranteed to work. Here is an example of a compound name: cell/nodes/node1/servers/server1/ejb/webbank/Account When do you use dumpNameSpace.sh Run the dumpNameSpace command against any bootstrap port to get a listing of the names bound with that provider URL.
  12. 12. 11. Explain JDBC Connection Pooling Each JDBC data source has a pool of JDBC connections that are created when the data source is deployed or at server startup. Applications use a connection from the pool then return it when finished using the connection. Connection pooling enhances performance by eliminating the costly task of creating database connections for the application. Each data source that you configure contains a pool of database connections that are created when the data source instance is created-when it is deployed or targeted, or at server startup. Connection Timeout This value indicates the number of seconds a request for a connection waits when there are no connections available in the free pool and no new connections can be created. Max Connections Specifies the maximum number of physical connections that you can create in this pool. Min Connections Specifies the minimum number of physical connections that you can create in this pool. Reap Time Specifies the interval in seconds between runs of pool maintenance thread. Unused Timeout Specifies the interval in seconds after which an idle or unused connection is discarded. Aged Timeout Specifies the interval in seconds before a physical connection is discarded. Which one should be the highest and which one should be the lowest in the reap/unused/aged timeouts. Aged timeout should be the highest and Reap timeout should be lowest. Purge Policy Specifies how to purge connections when a stale connections or fatal connection error is detected. What are stale connection exceptions When an application receives a stale connection exception on a database operation, it indicates that the connection currently held is no longer valid. (or) Whenever a troubled connection is encountered, a staleConnectionException is raised. (A troubled connection is an inconsitent connection object in a connection pool) 12. Explain the Deployment steps of a J2EE application to WAS
  13. 13. 13. How would you go about when a new application comes into ur environment (resources, settings, heaps etc) 14. What is rollover update It is used to rollover the updates to all the cluster members in a cluster whenever any changes are made to even one of the cluster member. 15. What is ripple start RippleStart combines stopping and starting operations. It first stops and then restarts each member of the cluster. 16. Explain 2 Troubleshooting scenarios 17. How would you set up introscope profiles/probes Wily's Introscope is an enterprise application performance monitoring tool. It provides an overview of application and server health and statistics. 18. VerboseGC VerboseGC is the logging mechanism implemented by the JVM to diagnose memory/storage problems. Here Garbage collection identifies and frees previously allocated storage that is no longer in use. An understanding of the way that the Garbage Collector works will help you to diagnose problems. Verbose logging is intended as the first tool to be used when attempting to diagnose garbage collector problems; more detailed analysis can be performed by invoking one or more (trace garbage collector) traces. How do set it up In Admin Console goto Servers > Application Servers > Java and Process Management > Process Definition > Java Virtual Machine > Check Verbose Garbage Colletion option. What files have verbosegc information That particular server's (<profile_home>/logs/servername/) native_stderr.log What tool did you use to analyse verbosegc logs GCAnalyzer 19. What is process definition. A process definition specifies the run-time characteristics of an application server process. A process definition can include characteristics such as JVM settings, standard in, error and output paths, and the user ID and password under which a server runs.
  14. 14. What is the effect of changing max heap and min heap size of a jvm Max Heap Size: When you have established the maximum heap size that you need, you might want to set the minimum heap size to the same value; Using the same values is not usually a good idea, because it delays the start of garbage collection until the heap is full. The first time that the Garbage Collector runs, therefore, becomes a very expensive operation. Also, the heap is more likely to be fragmented and require a heap compaction. Again this is a very expensive operation. Min Heap Size: The recommendation is to start your application with the minimum heap size that it needs. When it starts up, the Garbage Collector will run often and, because the heap is small, it runs efficiently. Whats the max heap allowed by AIX Minimum heap size allowed AIX: 4 MB LINUX: 4 MB WINDOWS: 4 MB Maximum heap size allowed AIX: Half the available memory with a minimum of 16 MB and a maximum of 512 MB LINUX: Half the available memory with a minimum of 16 MB and a maximum of 512 MB WINDOWS: Half the real (physical or RAM) memory with a minimum of 16 MB and a maximum of 2 GB What are the effects of large initial heap/max heap The time between garbage collections will increase, but the garbage collection will take longer, which indirectly effects the turn-around-time of the applicaiton performance. (or) Because it delays the start of garbage collection until the heap is full. The first time that the Garbage Collector runs, therefore, becomes a very expensive operation. Also, the heap is more likely to be fragmented and require a heap compaction. Again this is a very expensive operation. 20. Heap Dumps/ Core dumps What is a heap dump Heapdump is a JVM facility that generates a dump of all live objects that are on the Java heap at a certain point in time; that is, those that are used by the Java application. When the java heap is exhausted the JVM will generate a heap dump by default. By default, you get heapdumps only on OutOfMemoryErrors. You do not get heapdumps in crashes or through a signal to the JVM. It shows the objects that are using large amounts of memory on the
  15. 15. Java heap, and what is preventing them from being collected by the Garbage Collector. What is a core dump/thread dump Java thread dumps provide detailed information about all active Java threads. It is useful in several situations, most notably for hung servers. How to generate Heap dump both WAS 5/6 By default, you get heapdumps only on OutOfMemoryErrors. You do not get heapdumps in crashes or through a signal to the JVM. In order to manually generate a heapdump, you must first enable signal-based heapdumps by setting the IBM_HEAPDUMP=TRUE and IBM_NOSIGHANDLER=TRUE environmental variables and through wsadmin follow the below process: >set myheap_dm [$AdminControl queryNames type=JVM,process=server1,*] >$AdminControl invoke $myheap_dm generateHeapDump How to generate core dump/thread dump both WAS 5/6 Through wsadmin >set mythread_dm [$AdminControl completeObjectName type=JVM,process=server1,*] >$AdminControl invoke $mythread_dm dumpThreads Whats the difference between kill -3 command executed on WAS5 JVMs and WAS 6 JVMS kill -3 command generate core dumps. What tools did you use to analyse core dump/thread dump IBM ThreadAnalyzer What tools did you use to analyse heap dumps IBM HeapAnalyzer In what scenarios is a core dump/thread dump useful It is useful in several situations, most notably for hung servers or hung thread situations or thread deadlock situations. In what scenarios is a heap dump useful It is useful in situations, most notable for memory leak problems or memory allocation problems for exaple OutOfMemoryExceptions. What are the respective extensions (jdk 1.3 and 1.4) jdk 1.4 heap dump format generates a .phd format 21. How do you make a jvm run as a service in windows and why. WASService.exe. The reason we can utilize this service on Windows platform is because the Windows OS automatically starts this service whenever the system is up and we can flexibily start and stop the server from windows services.
  16. 16. 22. What is activity log and how do you view it. These are IBM Service logs which are in binary format, which logs activity of various WebSphere Application Server components. Log Analyzer is used to view the activity.log files. 23. How do you set up traces. In Admin console Troublshooting > logs and trace > servername > choose Diagnostic trace 24. What is a PMR and explain how you worked with IBM on a PMR PMR: Problem Management Record ---- PMR is created wehn a customer submits a request to fix a software problem via ESR. A PMR number is assigned to track the request. You can attach files to your PMR to provide the IBM engineer more information to better assist you. ESR: Electronic Service Request -------- 25. What all parameters did you tune in WAS (other than JDBC connection pool and heap sizes) We can tune some of these other aspects such as 1. Application server (parameter : ) 2. JVM tunings (parameter : ) 3. Applications (parameter : ) 4. Database (parameter : ) 5. JMS (parameter : ) 6. Security 7. Hardware capacity and settings (parameter : ) 8. Operating System (parameter : ) 9. Web Servers (parameter : ) 26. What other connection pools do you know in WAS other than JDBC connection pool J2C connection pool MQ connection pool Thread pool 27. How do you enable global security in WAS 1. Configure User registries (it can be custom, LDAP, or local OS) 2. Configure Authentication mechanisms (LTPA) 3. Configure Authorization (if there is any) and then check Enable global security. How do u configure an LDAP 1. In the Deployment Manager Admin Console, select Security -> Global
  17. 17. Security > User Registries -> LDAP. 2. Provide the details for the fields in the Configuration panel as listed below: Serverid, Serverpassword, Type, Host, Port, Base DN, Bind DN, Bind password (please get this info from LDAP admin) 3. Click Apply 4. Save the configuration for WebSphere. 5. We need to define the configuration for Global Security in the Administrative Console. Navigate to Security -> Global Security. 6. "Check" 'Enable global security' option 7. "Uncheck" 'Enforce Java 2 Security' option 8. From the Active User Registry drop-down list select LDAP as the active user registry. 9. Click Apply; this will validate the settings. 10. Save the configuration for WebSphere, and then restart the server. How do u configure LTPA Global Security > Authentication mechanism > LTPA > provide the password and Apply How do u configure SSO Global Security > Authentication mechanism > LTPA > SSO > check 'Enabled' option What is the limitation of SSO It is applicable only to a single domain. It cannot span multiple domains. Example: mail.google.com (every resource under google.com can be accessed) but outside of that domain SSO cannot be applied. How do you make SSO work across multiple cells The LTPA token keys must be exported to the target cell and the LTPA token key from the target cell must be imported into the current cell. Does WAS support multiple LDAPs? Yes, from 6.0 version onwards 28. What is SSL Secure Socket Layer is the technology to establish secure communication along with data integrity and encryption over the network or between the nodes (machines) 29. Did you ever work with certificates Yes, 30. What is the utility that comes with WAS / IHS to manage certificates ikeyman.sh 31. What is the defualt key store location for WAS
  18. 18. <profile_home>/etc 32. How do you change the port number for admin console Logging into the admin console http://<hostname>:<admin_port>/admin ex: http://localhost:9060/admin Without logging into the admin console C:WebSphereprofilesdmgrconfigcellsdmgr_cellnodesdmgr_nodeserviceindex. xml (dmgr starts but cannot open the admin console because the port hasn't been changed in virtual host xml file) C:WebSphereprofilesdmgrconfigcellsdmgr_cellvirtualhosts.xml 33. How do you disable security for Deployment manager without logging into the console security.xml , enable=false 34. If you have to change the ports of a jvm manually without logging into the admin console which file would you edit. serverindex.xml 35. Explain virtual hosts concept A virtual host is a configuration that enable a single host machine to resemble multiple host machine. What are the two virtual hosts that come with WAS installation admin_host, default_host 36. What is the plugin configuration file and where is it located The plug-in configuration file (plugin-cfg.xml) contains routing information for all applications mapped from the web server to the application server. How do u regenerate the plugin config file The GenPluginCfg command is used to regenerate the plug-in configuration file. Depending on the operating platform, the command is: Linux and Unix: GenPluginCfg.sh Windows: GenPluginCfg.bat When do u regenerate the plugin config file The plug-in configuration file needs to be regenerated and propagated to the Web servers when there are changes to your WebSphere configuration that affect how requests are routed from the Web server to the application server. These changes include: _ Installing an application
  19. 19. _ Creating or changing a virtual host _ Creating a new server _ Modifying HTTP transport settings (i.e HTTP ports) _ Creating or altering a cluster When do you manually edit the plugin config file When enabling SSL (specifying the key file name), LoadBalanceWeight, and minimum number of connections. What is the information in a plugin config file Plugin config file contains routing information along with information on virtual hosts , clusters (cluster members), and URIs. When the request comes to a webserver how does the webserver know the JVM that is capable of handling that request. The webserver first takes the request and if it can't serve, it forwards the request to the plugin config file . The plugin config file routes the request to the appropriate application server (or cluster member or jvm) according to the mapping information it has. What is the refresh interval of plugin. 60 seconds If a change is made to the plugin config should the webserver be restarted? Not Required because the plugin's automatic refresh interval is 60 seconds. 37. What webserver did you work on I have on on IBM HTTP and Apache web servers. What is the configuration file for IHS httpd.conf If changes are made to the config file should the webserver be restarted Yes. The webserver must to restarted so the changes made to the config file become effective. What changes are made to this config file (automatically) during plugin installation on the webserver The plugin's binary module file (.dll) path and the plugin's configuration file (plugin-cfg.xml) path will be copied to the httpd.conf file automatically. 38. What is collector tool The collector tool gathers information about your WebSphere Application
  20. 20. Server installation and packages it in a Java archive (JAR) file that you can send to IBM Customer Support to assist in determining and analyzing your problem. Information in the JAR file includes logs, property files, configuration files, operating system and Java data, and the presence and level of each software prerequisite. Collector tool can be run by only root or administrator. Syntax It must be invoked from a temporary work directory > C:IBMWebSphereAppServerbincollector.sh | bat Use It can be used to send it to the IBM Customer Support to assist in determining and analyzing your problem. Output file The output will a .jar file. For example: node31-dmgr_cell-dmgr_node- dmgr-WASenv.jar 39. When on a system there is an existing installation of websphere federated to the DM. You make one more installation and federate this to another/same DM. Will it work?? We can federate it to the same DM. This works. If it doesnt, how will you make it work 40. What is the difference between horizontal/vertical clustering. Clustering is a mechanism which provides workload management (WLM) and failover for applications that reside on the application server cluster. Horizontal clustering: For high availability and horizontal scalability. Vertical clustering: For high availability and vertical scalability. Disadvantage: Single point of failure. When would you use them For workload management (WLM) and failover requirements. 41. When an application is deployed, where can the application binaries be found In the Applications folder when the application is deployed. Ex: C:IBMWebSphereprofilesdmgrconfigcellsdmgr_cellapplications 42. Unix commands 43. How do you create a JDBC resource To view this administrative console page, click Resources >JDBC Providers > New.
  21. 21. Step 1: Select the database type. Choose a supported database type. Step 2: Select the JDBC provider type. Choose a supported JDBC Provider type. Step 3: Select the implementation type. Choose a supported implementation type. Step 4: Apply Step5: Now create the required Data Sources To view this administrative console page, click Resources > JDBC Providers > JDBC_provider > Data sources > New 44. What is the difference between webserver handling in WAS 5 and 6 45. New features in WAS 6 46. What is the pre requisite for syncnode command The nodeagent on the node must be in a stopped state when this command is executed. 47. What are the logs in IHS access.log, error.log 48. How do you change the log format in IHS In httpd.conf file change the following line to your required parameters ----- LogFormat"%t %h %u %m" 49. What are the configuration files in IPlanet web server magnus.conf, obj.conf 50. What is TAI, and how do you enable it. TAI = Trust Association Interceptor. Trust association is used to connect reversed proxy servers to WebSphere Application Server. (or) Trust association enables the integration of IBM WebSphere Application Server security and third-party security servers. Global Security > LTPA > TrustAssociation > Check Enable trust association and Apply 1) What is the recommended free disk space in /tmp to install WAS. 1 GB 2) What is the default installation location of WAS in Linux. Opt/IBM/WebSphere/AppServer
  22. 22. 3) What is the default installation location of WAS in Sun Solaris. Opt/IBM/WebSphere/AppServer 4) What is the default installation location of WAS in AIX Usr/IBM/WebSphere/AppServer 5) List any 10 parameters in response file -W silentInstallLicenseAcceptance.value="true" -P wasProductBean.installLocation="C:IBMWebSphereAppServer" -OPT disableOSPrereqChecking="true" -OPT installType="installNew" -OPT createProfile="true" -OPT profileType="deploymentManager" -OPT PROF_enableAdminSecurity="true" -W nodehostandcellnamepanelInstallWizardBean.nodeName="krishna_node" -W nodehostandcellnamepanelInstallWizardBean.hostName="localhost" -W winservicepanelInstallWizardBean.winServiceQuery="true" -W winservicepanelInstallWizardBean.accountType="localsystem" -W winservicepanelInstallWizardBean.startupType="manual" 6) Write the complete command to execute a response file. <was-setup>./install –options “<absolute path of response file>” – silent 7) Which registry file will get updated after installation of WAS. vpd.properties 8) What is the use of SOAP Connector port and what is the default soap port number for DMGR profile. Client Applications like wsadmin uses Simple Object Access Protocol and that is listening to the port 8879. If we want federate a profile by using SOAP protocol and SOAP connector port number, we can federate a profile. 9) What is the default Http transport port number for Application Server profile and what is the use. 9080, (if ssl was enabled 9443) If we want to invoke applications running on AppServer we are using HTTP transport port 10) What is the default Bootstrap port number in App.Serv profile and what is the use. 2809. To access the EJB’s, JNDI use bootstrap port to obtain initial context root. 11) Installation was successful and when I am trying to start server it is giving “Invocation Target Exception” why you will get this issue and how you are trouble shooting this issue. May be the problem with hostnames, hostnames are mismatched. Add the host name in etc/hosts file which you had given at the time of installation.
  23. 23. 12) What are different profile templates in WAS 6.0? Dmgr, default and managed 13) Write the complete command to create an App.Serv profile through command line. C:IBMWebSphereAppServerbin>wasprofile.bat -create -profileName AppSrv04 -profilePath "C:IBMWebSphereAppServerprofilesAppSrv04" -template Path "C:IBMWebSphereAppServerprofileTemplatesdefault" -nodeName app_node04 -cellName cell04 -hostName krishamurthy 14) Write a complete command to delete a profile. C:IBMWebSphereAppServerprofilesAppSrv01bin>wasprofile.bat -delete -profileName AppSrv01 15) If you get a problem before creating a log’s directory at the time of installation, at that time where you can check the status of installation tmp/log.txt 16) What is the difference between managed node and unmanaged node Manged Node contains node agent, we can administer federated profiles servers and applications from dmgr admin console. For unmanaged the will be no nodeagent. 17) What is the impact for the federated profile servers, if DMGR is down. No impact on servers and applications 18) In which xml file, we can change the port numbers. Serverindex.xml 19) What is a server. Server provides a runtime environment for your web app’s Or Enterprise applications. Server receives user request, process that request and execute that request and response will be generated to the end users. 20) If we stop the nodeagent, what will be the impact for end users. There is no impact for end users 21) How to take backup with out stopping servers. ./backupConfig.sh –nostop 22) What are the different user registries under global security in 6.0 and 6.1. Local OS, Custom, LDAP. Federated repository was added in 6.1 23) What is the necessity of global security? To provide security for the admin console.
  24. 24. 24) What is the port number for LDAP server with SSL and without SSL? 389 and 636 25) How to disable Global Security ./wsadmin.sh -conntype NONE Securityoff exit 26) How to know how many profiles are available. /AppServer/bin>./wasprofile.sh –listProfiles 27) What are the advantages and disadvantages of Local OS,Custom and LDAP user registries? Global Security: In 6.0 we have 3 ways to provide security for admin console. 1) Local os user registry. 2) Custom user registry. 3) LDAP (Light Weight Directory Access Protocol) user registry. a) Custom user registry: Here we have to create two files named: Users. Registry Groups. Registry We can create this file any where but we have to configure this absolute path to the application servers. b) LDAP: It is a mechanism & not a server. Here we are integrating seperate directory servers. if SSL is enabled the port number is 636, if it is not enabled 389. -> In local os user registry we have to create user accounts and that user accounts have to configure to websphere application servers. where as in the custom user registry specifying user names and passwords in a normal file and we are specifying the absolute path of that file into the websphere application server. whenever we are going for LDAP user registry we have to specify user id & password & type of directory server, port number (default is 389), if SSL is enabled we have to specify port number as 636 and we have to specify Base distinguished name which indicates authentication for users and we have to specify Bind distinguished name and Bind password which specify authorization for user and we have to select "Advanced Light Weight Directory Access Protocol user registry settings" there we have to specify user filter classes and group filter classes (automatically it will be there) and finally we have to restart the server. 28)What is the full form of JDBC. JDBC (java Database Connectivity) is an API (Applicationprogram Interfaces), that is useful to write a java program to connect any database, and retrieve the data form the database and utilize the data in the java program. Making a connection to a database Creating SQL or MySQL statements Executing that SQL or MySQL queries in the database Viewing & Modifying the resulting records
  25. 25. We have 2 types of JDBC drivers in was. Those are Type2(Thick) and Type4(Thin/Native Protocol) jdbc drivers.Type2 JDBC drivers require the database client software on the client node to connect to the database server.Type4 JDBC drivers connect directly to the database server. 29) What is the full form of JAR and what a jar file contains? An EJB module which contains enterprise java beans class files and EJB deployment descriptors are packed as JAR files with .jar extension. 30)Write the name of the jar file necessary to configure Oracle 9i & Oracle 10g Database. In oracle 10g & 9i We have only one jar file i.e OJDBC14.JAR (for log) & Class12.jar (for 9i) and In DB2 we have 3 or more jar files. i.e DB2JCC.JAR,DB2JCC_LICENSE_C4.JAR, DB2JCC_LICENCE_CIS42.JAR. -> The .jar file is nothing but a collection of .class files. It is necessary to communicate with the database. So we should configure this jar files with database. 31) What is a connection pool? Connection pooling is a place where a set of connections are kept and are used by the different programmers with out creating connections to the database(it means there is a ready made connection available for the programmers where he can use). After using the connection he can send back that connection to the connection pool. Number of connections in connection pool may vary. 32) What is meant by Federation 33) What are the different types of console roles available and explain about each role? 34) what is your goal and role in was? Goal - a. Goal is to provide infrastructure for the demands b. goal is to provide stable environment c. goal is to provide high availability d. goal is to provide scalability e. goal is to provide 0 downtime Role- a. involve in infrastructure architecting a.k.a design b. involve in implementing architectures c. involve in solving infrastructure issues d. involve in solving application environment issues e. involve in solving issues which become hurdles in providing high availability f. involve in solving issues which become hurdles in scaling 35) what is incident management? Incident = Issue. Hurdle. Risk. Downtime. Security Breach. Incident Management = Risk Plan. Potential incidents management. 36) Do you know how to configure ticketing tool with WAS?
  26. 26. This is a meaningless question. You need more information to address this question. Ticketing System - is it part of IBM? Does it fall in Web Sphere Umbrella? Is it an application running on WAS? Is it a Web based app? or Java Client? Unless you know these, it’s a blind question. 37) when you configure LDAP with application server, if the users are unable to connect to WAS. How do you trouble shoot this scenario? You don’t trouble shoot, you *troubleshoot* The issue is - U have LDAP, running on Server x. Server y, WAS bind to server x. if a problem occurs, u need to dig like this - A) Ldap up or not B) If yes, can server y reach server x [simple ping or telnet on ldap port] C) If yes - Ur infrastructure is clear D) Any firewall between server y and server x. talk to firewall team, ask them to enable trace between server y and x. any droppage of packets? E. if everything is clean, talk to ldap admin, enable trace on that specific group who are getting auth errors. F) Look into systemout.log, find out what exactly the error message you get. G) U have to login to admin console and verify the authentication. u can *test* ldap auth from console. Feb 7 (2 days ago) Raju 38) What is the difference between Signed Certificate and Self-signed certificate? Which one you prefer? http://webdesign.about.com/od/ssl/a/signed_v_selfsi.htm 39) In Windows 2003 box, an application server process is not responding. How do you trouble shoot this issue. Even when you are unable to kill the process. *trouble shoot* - On any server, app server freeze - may because of resource crunch, or process failing to release a resource, jvm could not complete a specific thread, blablabla. a. do u have enuf rights to kill the process? b. check the processor utilization thru task manager c. kill -3, if not responding, try again, again and again d. verfiy the disk space. e. verify error log and out log. Blabla 40) how many types of scripting you have done or you know? such questions cannot be asked in a forum, or its difficult to answer. if i were you, i wud say, perl scripting, php, python, jython, tcl, jacl, ant, shell, blabla. Feb 7 (2 days ago) 41) when you are on call support when you got a severity 1 ticket, how do you take action. Explain in detail. Open the ticket, read the message what the problem is about. login to targeted server(s), check logs, depending on error, propagate first hand info to stakeholders. sit on the issue, fix it, close it.
  27. 27. 42) What is a fix pack, refresh pack and when you will go for fix pack installation and when you will go for refresh pack installation? fix pack fixes certain issues. refresh pack is a mile stone for a release. a refresh pack takes you to a release, say is a release. if you apply rp2, it becomes a release 6.0.2. if you apply fp35, it becomes, which is not a release. Feb 7 (2 days ago) Raju 43) when you find in a particular server 'cpu starvation' error message what you will do? whenever there is not enough physical memory available to allow the high availability manager threads to have consistent runtimes. When the CPU is spending the majority of its time trying to load swapped-out processes while processing incoming work, thread starvation might occur. Goto InfoCenter, search for starvation. To achieve good performance and avoid receiving these error messages, it is recommended that you allocate at least 512 MB of RAM for each Java process running on a single machine. High CPU usage in a large cell configuration when security is enabled With certain configurations and states, the amount of time spent in discovery becomes substantial. If a large the number of processes are defined within a core group, a proportionally large number of connections must be established to support these processes. If a large number of inactive processes are defined within a core group, a proportionally large number of connections are attempted during each discovery interval. If global security is enabled, the DCS connections are secured, and the impact of opening a connection greatly increases . To decrease the CPU time spent in discovery: In the administrative console, click Servers > Core groups > Core groups settings , and then select the -> DefaultCoreGroup. Under Additional Properties, click Custom properties > New. Enter IBM_CS_UNICAST_DISCOVERY_INTERVAL_SECS in the Name field and 120 in the Value field. Click OK. Then click New again and enter IBM_CS_SS_SECURE_TOKEN in the Name field andfalse in the Value field. Click OK and then Save to apply these changes to the master configuration. Restart the server for these changes to take effect. Transient high availability heartbeat failures und 11.If we said to analyze thread dumps can you do? Ya!! Why not 44) How comfortable with scripting?
  28. 28. 100% pakka comfortable 45) Did you worked with JACL or Jython scripts? I prefer one scripting style. Why wud I use two scripting styles? At a given point of time, scripting interface accepts only one language. 46) When you found hung thread error messages what you will do? Will you kill the process. If yes, in which case you have to kill the process? Lucky you and lucky me, we have IBM's InfoCenter. Is it not easy to perform a simple search on InfoCenter like this *hung thread*? http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp? topic=/com.ibm.websphere.nd.multiplatform.doc/info/ae/ae/ttrb_confighangdet.html Configuring the hang detection policy The hang detection option for WebSphere Application Server is turned on by default. You can configure a hang detection policy to accommodate your applications and environment so that potential hangs can be reported, providing earlier detection of failing servers. When a hung thread is detected, WebSphere Application Server notifies you so that you can troubleshoot the problem. Add the following properties: Name: com.ibm.websphere.threadmonitor.interval Value: The frequency (in seconds) Default: 180 seconds (three minutes). Name: com.ibm.websphere.threadmonitor.threshold Value: The length of time (in seconds). Default: The default value is 600 seconds (ten minutes). Name: com.ibm.websphere.threadmonitor.false.alarm.threshold Value: The number of times (T) that false alarms can occur before automatically increasing the threshold. Feb 7 (2 days ago) Raju 47) Explain about your enivronment, servers, webservers, etc., Think about ur company and thier business. Cook a story. Serve it on the table with some masala, salt and pepper. 48) What is a document server and what is the use of it. this is the funniest question one can ask. what is a document server? in general a document server is a repository of documents in an enterprise. what is the use of it? its the central repository and depending access polices agency wide authorized and authenticated *users* can access documents. ex., u have prepared a document on ur environment. u need a place to put that document so that ur team can access it, ur manager can access it. above that, another team who wants to read that document can access that, above that, some infrastructure team can access it, above that datacom people can access it and so on. what is the best place to put it? on ur desk top? or attach to mail? or dump it in a shared location.
  29. 29. if its a shared location, what that could be? will you dump it in a zunkyard shared location or in a proper shared location? first | < previous | next > | last report spam reply 49) TYPES OF SEVERIATIES? Severities will be of different types like Severity 1, 2, 3, 4, 5. Depending upon the type of issue it will be classified. 50) WHAT TYPE OF ISSUE'S CONTAIN SEVERIATY1 TICKET'S? Severity 1 tickets are the most rare tickets which will get and which we have to get in our administration. If our process is not running smooth, that means your application not responding, application server is not responding or entire environment falls then we will get severity 1 ticket. 51.WHAT IS THE DIFF B/W COREDUMP & THREAD DUMP? there is not much difference between these two. In thread dump we can find, what are the active threads that are there at that particular time. Where as core dump contains information about dead locks, hang threads also 52.WHEN THE SERVER HUNG HOW WILL IDENTIFY IN SYSOUT.LOG? Its very simple in systemout.log we will find a particular thread is hung from this many milli seconds will be found. The thread name will be WSVR**** 53. HOW TO TAKE BACKUP THE APPLICATION? Taking backup of the application can be done by using export option in the admin console or directly from the directory location. 54. WHAT'S THE RELATION B/W WIILY INTROSCOPE & WAS(LIKE AGENT/AGENTLESS)? Wily introscope is a third party tool which is used to monitor the server environments, not only WAS anything. 55) Difference between Websphere 5.1, 6.1 and 7.0 Profiles WebSphere 5.1:No Concepts of profile ,there are 4 types of Installation -Express,Base ,Network Deployment and Enterprise. Websphere 6.1:Cell Profile,Deployment Manager profile,Application Server profile,Custom Profile Websphere 7.0 Cell(DeploymentManager and managed node),Management,Application Server,Custom profile,Secure Proxy. Note:Under Management there are three types of profiles available :Administrative agent Deployment Manager
  30. 30. Job Manager Note:The Main use of Job Manager is to queue jobs to application server in a flexible management environment Managing Profiles WebSphere 5.1 :Websphere multiple installation instance can be created using wsinstance script WebSphere 6.1:There are two ways of managing a profile 1.Profile Management Tool(GUI) 2.Manage profiles(Command interface for managing profiles ) WebSphere 7.0: same as 6.1 Security Roles WAS 5.1:Administrator,operator,configurator WAS 6.1:Administrator,operator,configurator,Deployer,Admin Security Manager,ISC Admin WAS 7.0:Administrator,operator,configurator,Deployer,Admin Security Manager,ISC Admin,Auditor WebServers supported WAS 5.1:Apache HttpServer,Domino Server,IHS,Microsoft IIS,Sun Java System Web Server,HTTP Server for iseries WAS 6.1:Apache HttpServer,Domino Server,IHS,Microsoft IIS,Sun Java System Web Server WAS 7.0:HTTPServer for Z/Os and all web servers supported in 6.1 User Registries/Repositries WAS 5.1:Local Operating System,Standalone LDAP registry,Standalone Custom registry WAS 6.1:Federated repositories,Local Operating System,Standalone LDAP registry,Standalone Custom registry or file based registry WAS 7.0:Same as 6.1 lOGGING AND TRACING WAS 5.1Diagnostic trace JVM logs Process logs IBM Service logs WAS 6.1 Apart from the logs available in 5.1 there is a Change log detail levels which will enable the Message level and trace level of the JVM WAS 7.0Same as V 6.1 Managing WebServers
  31. 31. WAS 5.1:Web Servers cannot be managed through Websphere Admin Console WAS 6.1:WebServers can be Administered using the Websphere Admin Console (Stopping, Starting, Generation and propagation of Plug-in can be done). Web Servers can be created in Managed node or in Unmanaged node WAS 7.0 same AS V 6.1 JMS WAS 5.1:JMS Fail Over Support and scalability is not available WAS 6.1:JMS Fail over support and scalability is available.SIB(Service Integration Bus Concept is being introduced) WAS 7.0:Same as V 6.1 Monitoring WAS 5.1:N/A WAS 6.1:TPF(Tivoli Performance Viewer) is embedded in the Websphere Admin Console for monitoring WebSphere Objects WAS 7.0same as V 6.1 Intelligent Run Time provisioning WAS 5.1N/A WAS 6.1N/A WAS 7.0Intelligent run time provisioning is a new concept introduced in V7.0 At run time the server uses the activation plan to start only those components that are required inside the application server Components like Web Container , EJB Container , Web Service and SIP Container are dynamically activated SIP and Portlet Container WAS 5.1:N/A WAS 6.1SIP(Session Initiation Protocol) extends the application server to allow to run SIP applications written to JSR 116 Specification The Portlet applications can deployed which is compliant with JSR 168 WAS 7.0same as V 6.1 wsadmin scripts WAS 5.1:JACL is the scripting language which is used WAS 6.1:JACL will be deprecated from 6.1 and Jython scripting will be used. WAS 7.0:Same as V 6.1 Posted by TechnoTips at 4:18 AM 0 comments Reactions: Thursday, September 25, 2008 create Heapdump using wsadmin //Refrence of JVM
  32. 32. objectName=AdminControl.queryNames('type=JVM,process=WebSphere_Portal,*') wsadmin>print objectName WebSphere:name=JVM,process=WebSphere_Portal,platform=dynamicproxy,node=a hdp2csmwas78,j2eeType=JVM,J2EEServer=WebSphere_Portal,version=,typ e=JVM,mbeanIdentifier=JVM,cell=wpcell //genrate heapdump wsadmin>AdminControl.invoke(objectName, "generateHeapDump") Posted by TechnoTips at 4:24 AM 0 comments Reactions: 1)What is 5 Tier Architecture? in J2E we can write 5 tier archi like 1. Client Tier- Browser, Applet, Client Applications 2. Presentation Tier- Servlets, JSP 3. Business Tier- EJB or Some Business Objects 4. Integration Tier- JDBC 5. Backend Tier- Databases, JMS 2)we know that 3 tier have 1.UI(User interface) or (presentation) logic 2.BL (Business) 3.DL (Database) 2)Tell me about the Architecture of Web Application (how it will happen Workload Management & clustring) when ther request coming from the browser the webserver will handled that reuest , It will handled over to the plug-in, then the plug-in will looks in to the plug-in cfg.xml file for the reuested url and It will redirect the request to the avaliability of the servers in the cluster. The plug-in mainly perform the work load management.If any server is processing any request then the plug-in will route the request to the avaliability of the servers based on their weight and based on the algorithams. 3)what are the main point while installing an IHS? The main use of installing any external web server is to proces the dynamic content request 4)what the file path of httpd.conf? /opt/IBM HTTPSERVER/conf/httpd.conf
  33. 33. window c:programfilesIBM HTTP SERVERconfhttpd.conf 5)What are Java Programming languages? Servlets,jsp,ENB,Struts,JSF,HIbernate 6)What is Object pool? How to take back up ? while taking back is it necessary to stop the server? execute backupConfig.sh command to take the backup ,yes it is required to stop the servers, by default when you execute this command it will stop all the servers on the node so yhe partially synchronized information will not be saved . what are the Deployment ways ? steps ? 1.Hot fix 2.wsadmin 3.AdminConsole 4.Using third party tolls like ,Teamsite ,Cruise Control, MKS etc. 1)what is thin driver and thick driver.why it is cal... thick driver - type 1 and type 2 JDBC drivers are called thick drivers. The reason for it is - it provides JDBC access via ODBC drivers. ODBC binary code and in many cases database client code must be loaded on each client machine that uses such a driver. and as the program is connected to database by an extra layer in the clint hence thay are called thick drivers. Thin drivers: This style of driver converts JDBC calls into the network protocol used directly by DBMSs allowing a direct call from the client machine to the DBMS server and providing a practical solution for intranet access. hence their conenction to DB is more direct and without any intermediate stage making them thin drivers. type 4 driver. Basic difference between thin and thick client Oracle has a thin client driver which mean you can connect to a oracle database without the Oracle client installed on your machine. Thick client would need the Oracle Client database drivers etc.. Drivers include JDBC- ODBC bridge drivers JDBC drivers depending on tns resolution. Dominic thin driver is 4 type driver in java which r provide the connectivity between oracle and java.the main advantage is this driver is we connect the databse to java without create DSN.and it provide the all the host computer connectivity in the network.so its r most important driver which we use in the java. 2)What is Connection Pooling
  34. 34. Connection pooling is a place where a set of connections are kept and are used by the different programers with out creating conncections to the database(it means there is a ready made connection available for the programmers where he can use). After using the connection he can send back that connection to the connection pool. Number of connections in connection pool may vary. 1)How many JDBC drivers are there ? A) 2 B) 4 C) 3 D) 1 2)Which of the following is false for the Type 1 JDBC bridge driver? A) A Type 1 driver is a JDBC-ODBC bridge driver B) This type of driver enables a client to connect to an ODBC database via Java calls and JDBC C) Both the database and middle tier need to be Java compliant. D) ODBC binary code must be installed on each client machine that uses this driver. Explanation: Neither the database nor the middle tier needs to be java compliant. 3)Which of the following statement is true for the Type 2 JDBC driver? A) A Type 2 driver converts JDBC calls into calls for a specific database. B) This driver is referred to as a "native-API, partly Java driver." C) As with the Type 1 driver, some binary code may be required on the client machine, which means this type of driver is not suitable for downloading over a network to a client. D) All of the above 4)What is the difference between EAR, JAR and WAR file Answered by Jey on 2005-05-08 11:23:41: In J2EE application modules are packaged as EAR, JAR and WAR based on their functionality JAR: EJB modules which contains enterprise java beans class files and EJB deployment descriptor are packed as JAR files with .jar extenstion WAR Web modules which contains Servlet class files,JSP FIles,supporting files, GIF and HTML files are packaged as JAR file with .war( web achive) extension EAR All above files(.jar and .war) are packaged as JAR file with .ear ( enterprise archive) extension and deployed into Application Server. 5)Full form of java jar file? In: JAVA Programming [Edit categories] JAR = Java ARchive 6)Re: URL of Oracle thin driver. Topic: JDBC Luigi Viggiano PREMIUM, Jun 4, 2001 [replies:1] briefly: jdbc:oracle:thin:@hostname:port:oracle-sid
  35. 35. 1. in green the Oracle sub-protocol (can be oracle:oci7:@, oracle:oci8:@, racle:thin:@, etc...) is related on the driver you are unsign and the protocol to communicate with server. 2. in red the network machine name, or its ip address, to locate the server where oracle is running. 3. in blue the port (it is complementary to the address to select the specific oracle service) 4. in magenta the sid, select on wich database you want to connect. 1) Find Java Archive files using an Eclipse plug-in jmalasko writes " Discover JAR Class Finder, a plug-in utility with improved compatibility for Rational Application Developer, WebSphere Integration Developer, and Eclipse. This plug-in finds JAR files containing a given class for the Java build path and helps fix NoClassDefFound exceptions. 1) Explain about web sphere? The word web sphere popularly refers to IBM middleware technology products. Web sphere is known for its turn key operation in e business applications. It has run time components and tools which can help in creating applications which run on WAS. WAS refers to web sphere application server. 2) Explain about web sphere commerce? IBM web sphere commerce has a single platform which offers complete ecommerce solutions to developers. It can be very productive if you are planning to do business with consumers, business and indirectly through channel partners. This can be used to perform business with consumers, business and channel partners altogether. 3) Detail about the architecture of web sphere? Web Sphere is built on three main components they are • Database • J2EE application server • A web server The databases which it supports are • DB2 • Oracle • Cloudscape Application server is IBMWAS and the supported web servers are • IBM server • Microsoft IIS • Sun web server 4) State some of the features present in web sphere? Some of the features which are present in web sphere are: - • Order management
  36. 36. • Web sphere commerce accelerator • Analytical and business intelligence • Open standards such as Java, EJB, etc • Web sphere commerce payments and customer care, etc 5) Explain about IBM Web Sphere edge server? Web sphere edge server is used to improve the performance of web based systems. It can be used as forward or proxy server. Basically four components are present in the web sphere they are Network dispatcher, Caching proxy, Content distribution and application service at the edge. 6) Explain about extended deployment? Web sphere application server extended deployment increases the functionality of the server in two main areas they are manageability and performance. Dynamic virtualization between servers is possible with the help of XD. A stand alone distributed cache was added to it under the performance header, it is known as Object Grid. 7) Explain about the security features present in WAS? Security model for web sphere is primarily based on JAVA EE security model. It also depends upon the operating system. User authentication and authorization mechanisms are also provided in WAS. Light weight third party authentication mechanism is the main security feature present in WAS. 8) Explain about asymmetric clustering? Asymmetric clustering applications are primarily used in electronic trading systems employed in banks. Some of the features are, partitions can be declared during run time and are usually run on a single cluster at a time. Work specific to a particular can be routed to that cluster. 9) Explain the various Administrator benefits using Web sphere? Web sphere almost reduces the work of server administrator as he can manage load on servers efficiently without any hassles. It also gives him flexibility to divide the load and applications among different server farms. He can also predict about the incoming load on servers. Email alerts, restart options, memory leak detection, etc. 10) Explain about caching proxy of IBM Web sphere Edge sphere? A caching proxy can be configured in forward direction or as a proxy. Content requested by the user is cached by edge before sending or adhering to the query. Page fragments arising from JSP or servlets are cached by Edge and the caching process is slow. Performance and scalability of J2EE applications can be increased by edge. 11) Explain about the network deployment feature present in WAS? Managing singletons will be a thing of the past and it also provides hot recovery of singletons which makes you forget about your GC collected singletons. Transaction logs can stored on a shared file system. For clustering run time operations
  37. 37. deployment manager`s role was eliminated. J2EE failover support and cell configuration support is also present. 12) Explain about IBM web sphere integration developer? Web sphere integration developer provides an IDE to build applications based on service oriented architecture. Web sphere process server and web sphere ESB were built with WID. WID was built with RAD Eclipse based technology. 13) Explain about compute Grid? Compute grid is also known as Web sphere batch. Web sphere extended deployment offers a Java batch processing system called as Compute Grid. This forms an additional feature to Web sphere network environment. Various features are provided which help a developer to create, manage and execute batch jobs. Job scheduler, xJCL, batch container and batch programming controller. 14) Explain about web sphere MQ Real time transport? This feature is very useful in instant messaging across different clients through intranet and internet. This supports high volume and high performance across different clients. It uses the concept of light weight transport which is again based on IP rather than the queue process. 15) Explain about Web sphere MQ JMS Provider? Web sphere MQ and Web Sphere Business integration manager Broker are very useful in providing Java messaging services to wide range of clients (publisher – subscribe, point to point). Java classes are chiefly responsible for translating the API calls to API`s defined by web sphere. It is very useful to have knowledge of Web sphere MQ for proper configuration. 16) Explain the attribute CHANNEL in web sphere MQ? CHANNEL specifies the name of the server connection channel. Generally this is Web Sphere MQ network abstraction. The default standard used by CHANNEL is SVRCONN which is the server connection channel. This server is generally used to communicate to the queue manager by the client. 17) Is the naming of connection factory independent of the name specified by JMS client? Yes, the naming of connection factory is independent of the name specified by JMS client. This is made possible by WAS (Web sphere application server) with its resource references. It isolates the application from object names. This feature is important because it gives us the flexibility to change the administered object without changing the JMS client code. Tell me your self 1) Explain us in what way your education background will help you and the organization?
  38. 38. When answering this question explain to him about your education background and some extra courses you learnt during the process. You need to correlate your education background with the job opening. It would be added advantage if you can explain to him about the necessary features of the job. 2) Tell us something about yourself (One of the most common question asked)? Make sure that you tell about yourself in detail. Keep it small and simple explain to him about all your interests, previous job, passion, hobbies, projects, etc. Just brief him about all your interests and passion without going into detail, if asked state him about it in detail. 3) Why did you choose this specific course or stream of study when there are these many options available to you? When answering this question explain to him about why you choose this course or stream of study. What made you to choose this course, it would be an added advantage if you speak about the different projects you did. Also state or explain about your goal and higher education pursuits. 4) What will be the future of this industry? You need to explain the current trend of the industry and then explain to him about future developments. This is very important because it shows you that you are going hand in hand on the developments of the industry. 5) Explain specifically why we need to hire you? Explain to the interviewer about the necessary skills you have which were mentioned in the job requirement and also tell him about your team playing skills, soft skills, etc which can fetch you the job. If you have interest in pursuing higher studies then do explain about that. 6) Explain us about your previous project and its benefits As the question states you need to explain to him about your project and its benefits. Do remember a project is done by a team and it has features such as Environment, team members, technical descriptions, usage, etc. This is very important as he will mention to the technical HR about your project. 7) What was the reason you left your previous job? While explaining this question you need to make sure that you don’t speak about the negative features of your previous job which made you to leave the company instead explain about those negative features in a convincing manner and you can state that those reasons are hindering your growth. 8) What is your goal and what do you like to achieve in the near future? Explain to him about the goal which you would like to pursue in the near future and how the company can help you achieve that goal. Have a goal which is reasonable and achievable because it gives you a feeling of accomplishment.
  39. 39. 9) What was your biggest job or project accomplishment? For this question you would be explaining to him about the most challenging project you undertook and the benefits you obtained by completing it within the deadline. This will explain to the interviewer about your necessary skills, management skills and team play. 10) Can you go to tours often? When answering this question have it in mind that your answer will be kept in the record. If you cannot take tours due to various reasons state them in a pleasant tone. The answer which you give will be kept in the record. Also make it a habit to take small tours or travelling because every job demands that. 11) What do you know about this organization? Before answering this question make sure that you do enough research about the organization before applying to it. Also do remember that the interviewer knows much more about this organization than you do. Try to have as much information about the job position also. 12) Did you miss deadlines or target? Be honest when answering this question because your previous employer will have everything on record and your current employer may request for it. Explain to him/her about the deadlines you have met during the process. 1)How to identify unused indexes in DB2 for Linux, UNIX, and Windows database has gone into production, the existence of too many indexes turns out to be a cause for decreased database performance. Many indexes mean. During database application development, developers tend to define a large number of indexes on tables to guarantee that each and every query performs well. After application development has been finished and a database has gone into production, the existence of too many indexes turns out to be a cause for decreased database performance. Many indexes mean more work for the database system when executing UPDATE, INSERT, and DELETE (UID) operations. In addition, regular maintenance activities like RUNSTATS and REORG also run considerably longer in cases where many indexes are present. Therefore, to achieve the best database performance, it is critical to be able to determine which indexes are necessary for query execution and which indexes you can safely drop without impacting query runtimes. This article explains several methods that a DB2® for Linux®, UNIX®, and Windows® (DB2 LUW) database administrator (DBA) can use to identify unused and seldom used indexes. What is a JAR file? The JAR file format is based on the popular ZIP file format, and is used for aggregating many files into one. Unlike ZIP files, JAR files are used not only for archiving and distribution, but also for deployment and encapsulation of libraries, components, and plug-ins, and are consumed directly by tools such as compilers and
  40. 40. JVMs. Special files contained in the JAR, such as manifests and deployment descriptors, instruct tools how a particular JAR is to be treated. A JAR file might be used: For distributing and using class libraries As building blocks for applications and extensions As deployment units for components, applets, or plug-ins For packaging auxiliary resources associated with components The JAR file format provides many benefits and features, many of which are not provided with a traditional archive format such as ZIP or TAR. These include: Security. You can digitally sign the contents of a JAR file. Tools that recognize your signature can then optionally grant your software security privileges it wouldn't otherwise have, and detect if the code has been tampered with. Decreased download time. If an applet is bundled in a JAR file, the applet's class files and associated resources can be downloaded by a browser in a single HTTP transaction, instead of opening a new connection for each file. Compression. The JAR format allows you to compress your files for efficient storage. Transparent platform extension. The Java Extensions Framework provides a means by which you can add functionality to the Java core platform, which uses the JAR file for packaging of extensions. (Java 3D and JavaMail are examples of extensions developed by Sun.) Package sealing. Packages stored in JAR files can be optionally sealed to enforce version consistency and security. Sealing a package means that all classes defined in that package must be found in the same JAR file. Package versioning. A JAR file can hold data about the files it contains, such as vendor and version information. Portability. The mechanism for handling JAR files is a standard part of the Java platform's core API. Compressed and uncompressed JARs The jar tool (see The jar tool for details) compresses files by default. Uncompressed JAR files can generally be loaded more quickly than compressed JAR files, because
  41. 41. the need to decompress the files during loading is eliminated, but download time over a network may be longer for uncompressed files. The META-INF directory Most JAR files contain a META-INF directory, which is used to store package and extension configuration data, such as security and versioning information. The following files or directories in the META-INF directory are recognized and interpreted by the Java 2 platform for configuring applications, extensions, and class loaders: MANIFEST.MF. The manifest file defines the extension- and package-related data. INDEX.LIST. This file is generated by the new -i option of the jar tool and contains location information for packages defined in an application or extension. It is part of the JarIndex implementation and used by class loaders to speed up the class loading process. xxx.SF. This is the signature file for the JAR file. The placeholder xxx identifies the signer. xxx.DSA. The signature block file associated with the signature file stores the public signature used to sign the JAR file. The jar tool To perform basic tasks with JAR files, you use the Java Archive Tool (jar tool) provided as part of the Java Development Kit. You invoke the jar tool with the jar command. Table 1 shows some common applications: Table 1. Common usages of the jar tool Function Command Creating a JAR file from individual files jar cf jar-file input-file... Creating a JAR file from a directory jar cf jar-file dir-name Creating an uncompressed JAR file jar cf0 jar-file dir-name Updating a JAR file jar uf jar-file input-file... Viewing the contents of a JAR file jar tf jar-file Extracting the contents of a JAR file jar xf jar-file Extracting specific files from a JAR file jar xf jar-file archived-file... Running an application packaged as an executable JAR file java -jar app.jar -------------------------------------------------------------------------------- what is a connection pool?
  42. 42. Connection pooling is a technique used for sharing server resources among requesting clients. This article focuses on support for connection pooling of both database resources and non-database resources in a J2EE environment. Siva examines the JDBC 2.0, JMS 1.02, JNDI 1.2 Standard Extension APIs with regard to connection pooling and looks at some existing vendor implementations of those APIs. He then looks at the upcoming J2EE Connector Architecture 1.0 that would support a vendor-independent/pluggable approach to managing resource connections. 1) How many JDBC drivers ?name them? Answer There are 4 JDBC drivers are available: *JDBC-ODBC Bridge Driver:-Popular name is Type-1 Driver.In this connection some native code or native database client code must be loaded on each client machine due to this process it is slower than other drivers.It uses JDBC-Bridge-ODBC means between JDBC and ODBC one bridge is work that establise the connection between application and DataBase... It is suitable for automatic installation and downloading java technology application is not important. *Native API partly Java Driver:-Known as Type-2 Driver.It enables driver converts JDBC calls into calls on the client API for Oracle or any other databases.This driver need to load some binary code on client machine like JDBC-ODBC Bridge Driver. *Network Protocol Driver:-Known as Type-3 Driver. *Jdbc net pure Java Driver:-Known as Type-4 Driver. The JDBC Driver provides vendor-specific implementations of the abstract classes provided by the JDBC API. This driver is used to connect to the database. there are: Type 1 : JDBC-ODBC Bridge Driver Type 2: Native API Partly Java Driver Type 3: Network protocol Driver- Type 4: JDBC Net pure Java Driver 2) what is JDBC? Answer JDBC(java Database Connectivity) is an API(Application program Interfaces), that is useful to write a java program to connect any database,and retrieve the data form the database and utilize the data in the java program. 1.Making a connection to a database 2.Creating SQL or MySQL statements 3.Executing that SQL or MySQL queries in the database 4.Viewing & Modifying the resulting records 3) How warnings are retrieved in JDBC? Answer while using jdbc, warnings can occur at any time while getting connection
  43. 43. while creating statement while getting resultset, at each , we can get using getWarnings() method. ->Web Sphere relates to IBM Family. ->We have different servers in market such as: JBOSS --} Web Logic -- }Application Servers Web Sphere --} Tomcat -- Partial Application Servers i.e not pure Web Server &Not pure Application Server. ->JBoss is a open source software ->The concepts of Web Logic & Web Sphere are same but only the terminology is different. ->In 6.0 Version we have 3 types of packages. 1) Express Package --} 2) Base Package --} Used for Stand alone Environment 3) Network Deployment -- Distributed Environment -> In java we have 3 parts. 1)J2SE (core java) 2)J2EE (servlets, jsp's(web applications) ,Ejb's(enterprise java beans. 3)J2ME -> We will make the web application as .WAR (web Archieve)file. -> And we will make enterprise applications as .EAR file. -> For installation we have 2 modes: 1)GUI. 2)Silent Mode. Silent Mode there is a file called Response File this is what we have to customize. ->ServerIndex.Xml file is used to find out the port number. Servers are listening to this port number, not application. -> Whenever we change port number and restart the server it will be updated in portdef, no need to change here again. Profile: A profile is nothing but an environment where we can create Servers. There are 3 types: 1) Application Profile. 2) Deployment Profile. 3) Custom Profile. -> The default profile is Application Server profile. -> The custom profile will give us an empty node. -> The soap connecter port number of deployment manager is 8879. -> Independantly a custom profile will have no use. We have to get connected with dmgr.
  44. 44. -> Before federation we have to check whether, .Dmgr is opening or not. .Dmgr is under running or not. In dmgr host we maintain dmgr just to monitoring and configuring the administration. ->In ND package we have 3 types of Templates: 1) Dmgr Template 2) Default Template 3) Managed Template. -> By default the dmgr profile won't give any servers. It is not at all a server, used just to configure. -> The AppServer gives server1 as default server. In application server we have no option to create server. It is just a stand alone profile. Node: is a collection of servers. it reduces administration burden. It is a single point of servers. If we start Node, n-number of servers will get started, if we stop all will be stopped. Federation: In Dmgr01 we should have an eligible node to create servers but Dmgr node is not eligible, at that time we can connect App-node which is eligibe to create servers from the appsrv01 Then we can create servers using App-Node in dmgr01. If we want to do federation we have to ping the Dmgr Server. Dmgr was introduced for single point of admin. In dmgr admin console, number of servers will be there under same environment. We can create number of servers under dmgr console using Add-node. When ever we do federation a node agent will be created to communicate between Appserv & Dmgr. Node Agent: It will acts as a communication between which node we are federating. Cell Profile: is the combination of deployment profile and application profile. in both 6.0 & 6.1 the cell is available in deployment manager. Whenever we create cell profile automatically there will be deployment profile & application profile and federation also will be done automatically. The complete administration will be under the cell profile only. Global Security: In 6.0 we have 3 ways to provide security for admin console. 1) Local os user registry. 2) Custom user registry. 3) LDAP (Light Weight Directory Access Protocol) user registry. 2) custom user registry: Here we have to create two files named: users.registry groups.registry We can create this files any where but we have to configure this absolute path to the application servers. 3)LDAP: It is a mechanism & not a server. Here we are integrating seperate directory servers. if SSL is enabled the port number is 636, if it is not enabled 389. -> In local os user registry we have to create user accounts and that user accounts have to configure to websphere application servers.
  45. 45. where as in the custom user registry specifying user names and passwords in a normal file and we are specifying the absolute path of that file into the websphere application server. whenever we are going for LDAP user registry we have to specify user id & password & type of directory server, port number (default is 389), if SSL is enabled we have to specify port number as 636 and we have to specify Base distinguished name which indicates authentication for users and we have to specify Bind distinguished name and Bind password which specify authorization for user and we have to select "Advanced Light Weight Directory Access Protocol user registry settings" there we have to specify user filter classes and group filter classes (automatically it will be there) and finally we have to restart the server. ->Web Sphere application server is a middleware component. -> In 3-Tier Architecture we have 3 levels. In level 1 (Tier-1) we have HTTP server (or web server) In Tier-2 we have Application server In Tier-3 we have Data base. Whenever we integrate database with application server every applications are able to communicate with the database. ->A database is a collection of data. -> A schema is a collection of Tables. -> In oracle 10g & 9i We have only one jar file i.e OJDBC14.JAR (for log) & Class12.jar (for 9i) and In DB2 we have 3 or more jar files. i.e DB2JCC.JAR,DB2JCC_LICENSE_C4.JAR, DB2JCC_LICENCE_CIS42.JAR. -> The .jar file is nothing but a collection of .class files. It is necessary to communicate with the database. So we should configure this jar files with database. JDBC: providers create connection between web application server & database server for communication.But data source provide communication for applications inside WAS with particular database inside the DB server. ->We can say HTTP Servers as web servers also. The responsibility of http servers is to serve static content only. It will give quick response to static content than app servers. To communicate between http servers & app servers we have a concept called "PLUG-INS".(it is a intermediatory component) By using round robin algorithm (default), here we have a concept routing table, which is taken care by the http server. -> Plug-ins contain Plugin-cfg.xml contains complete information about application server environment i.e how many clusters are there, how may cluster environments are there, weight of cluster etc. Virtual Host: Here we will have wc-default host port number also. We can create or change this ports by using Virtual hosts concepts. All applications and application servers has to listen to this ports. ->If we want to access an application under multiple domains, or by using multiple ports, (simply multiple domains,multiple ports). After following all the steps we have to restart the server. ->multiple domain names can access the same application. ->All the applications will go through the http server only at the time of trouble shooting we can by pass this http server for some purposes.
  46. 46. Clusters: A logical group of related components is a "Cluster". ->Here, if server1 fails to deploy one application servers will take care of that, which is called as clustering but this will not supported by Base & Express. Q)What is high availability, why we have to go for clusters? At any cost the application should be available at all times, it should not go down. To overcome this problems we go for clusters. ->We have 2 types of clusters: 1) Vertical Clusters. 2) Horizontal clusters. 1) Vertical Clusters: Here we are deploying app1 through cluster, so if server1 fails we can access through server2. But if the host i.e, the total physical machine get crashed then we can not access. This is the disadvantage with the vertical clusters. 2) Horizontal clusters: Here we are deploying apps in multple hosts or physical boxes. Here if one host gets crashes, the end user can access. Hence, to achieve high availability we are going for clusters. -> coming to performance, vertical cluster gives more performance than the horizontal because transmission of response takes time. -> vertical is preferred in development, test environment.Horizantal is used in production environment. -> Here if the application is not running under server2 we have to add the server2 ports into the virtual hosts. Plugin-cfg.xml: The plugin-cfg.xml contains information about application server environment like how many clusters, how may cluster members, application uri, port numbers, routing algorithms, weight of cluster members. -> An application contains: Servlets, Jsp's, Html, css, javascript } web resources. Ejbs} Ejb components. ->if we deploy any application, at that time all web resources will go under web container and Ejb components will go under Ejb container. ->if any request is looking for web resource, at that time web container itself will, generate the response. Tell me about your Day-to-Day activities? Tell me about the Architecture of Web Application (how it will happen Workload Management & clustring) when ther request coming from the browser the webserver will handled that reuest , It will handled over to the plug-in, then the plug-in will looks in to the plug-in cfg.xml file for the reuested url and It will redirect the request to the avaliability of the servers in the cluster. The plug-in mainly perform the work load management.If any server is processing any request then the plug-in will route the request to the avaliability of the servers based on their weight and based on the algorithams. what are the main point while installing an IHS? The main use of installing any external web server is to proces the dynamic content request
  47. 47. what the file path of httpd.conf? /opt/IBM HTTPSERVER/conf/httpd.conf window c:programfilesIBM HTTP SERVERconfhttpd.conf What are Java Programming languages? Servlets,jsp,ENB,Struts,JSF,Hibernate How to take back up ? while taking back is it necessary to stop the server? execute backupConfig.sh command to take the backup ,yes it is required to stop the servers,by default when you execute this command it will stop all the servers on the node so yhe partially synchronized information will not be saved . what are the Deployment ways ? steps ? 1.Hot fix 2.wsadmin 3.AdminConsole 4.Using third party tolls like ,Teamsite ,Cruise Control, MKS etc. what is soap and soap port? SOAP is an XML-based messaging protocol. It defines a set of rules for structuring messages that can be used for simple one-way messaging but is particularly useful for performing RPC-style (Remote Procedure Call) request-response dialogues. It is not tied to any particular transport protocol though HTTP is popular. Nor is it tied to any particular operating system or programming language so theoretically the clients and servers in these dialogues can be running on any platform and written in any language as long as they can formulate and understand SOAP messages. As such it is an important building block for developing distributed applications that exploit functionality published as services over an intranet or the internet. what is a webcontainer? A container that implements the Web component contract of the J2EE architecture. This contract specifies a runtime environment for Web components that includes security, concurrency, life-cycle management, transaction, deployment, and other services. A Web container provides the same services as a JSP container as well as a federated view of the J2EE platform APIs. A Web container is provided by a Web or J2EE server What is the error HTTP 403 indicates and how to solve these issues? This is due to SSL certificate or some security settings in the server might have issues.
  48. 48. Introduction Your Web server thinks that the HTTP data stream sent by the client (e.g. your Web browser or our CheckUpDown robot) was correct, but access to the resource identified by the URL is forbidden for some reason. This indicates a fundamental access problem, which may be difficult to resolve because the HTTP protocol allows the Web server to give this response without providing any reason at all. So the 403 error is equivalent to a blanket 'NO' by your Web server - with no further discussion allowed. By far the most common reason for this error is that directory browsing is forbidden for the Web site. Most Web sites want you to navigate using the URLs in the Web pages for that site. They do not often allow you to browse the file directory structure of the site. For example try the following URL (then hit the 'Back' button in your browser to return to this page): This URL should fail with a 403 error saying "Forbidden: You don't have permission to access /accounts/grpb/B1394343/ on this server". This is because our CheckUpDown Web site deliberately does not want you to browse directories - you have to navigate from one specific Web page to another using the hyperlinks in those Web pages. This is true for most Web sites on the Internet - their Web server has "Allow directory browsing" set OFF. 403 errors in the HTTP cycle Any client (e.g. your Web browser or our CheckUpDown robot) goes through the following cycle: Obtain an IP address from the IP name of your site (your site URL without the leading 'http://'). This lookup (conversion of IP name to IP address) is provided by domain name servers (DNSs). Open an IP socket connection to that IP address. Write an HTTP data stream through that socket. Receive an HTTP data stream back from your Web server in response. This data stream contains status codes whose values are determined by the HTTP protocol. Parse this data stream for status codes and other useful information. This error occurs in the final step above when the client receives an HTTP status code that it recognises as '403'. Fixing 403 errors - general You first need to confirm if you have encountered a "No directory browsing" problem. You can see this if the URL ends in a slash '/' rather than the name of a specific Web
  49. 49. page (e.g. .htm or .html). If this is your problem, then you have no option but to access individual Web pages for that Web site directly. It is possible that there should be some content in the directory, but there is none there yet. For example if your ISP offers a 'Home Page' then you need to provide some content - usually HTML files - for the Home Page directory that your ISP assigns to you. Until the content is there, anyone trying to access your Home Page could encounter a 403 error. The solution is to upload the missing content - directly yourself or by providing it to your ISP. Once the content is in the directory, it also needs to be authorised for public access via the Internet. Your ISP should do this as a matter of course - if they do not, then they have missed a no-brainer step. If your entire Web site is actually secured in some way (is not open at all to casual Internet users), then an 401 - Not authorized message could be expected. It is possible, but unlikely, that your Web server issues an 403 message instead. Some Web servers may also issue an 403 error if they at one time hosted your site, but now no longer do so and can not or will not provide a redirection to a new URL. In this case it is not unusual for the 403 error to be returned instead of a more helpful error. So if you have recently changed any aspect of your Web site setup (e.g. switched ISPs), then a 403 message is a possibility. Obviously this message should disappear in time - typically within a week or two - as the Internet catches up with whatever change you have made. If you think that the Web URL *should* be accessible to all and sundry on the Internet and you have not recently changed anything fundamental in your Web site setup, then an 403 message indicates a deeper problem. The first thing you can do is check your URL via a Web browser. This browser should be running on a computer to which you have never previously identified yourself in any way, and you should avoid authentication (passwords etc.) that you have used previously. Ideally all this should be done over a completely different Internet connection to any you have used before (e.g. a different ISP dial-up connection). In short, you are trying to get the same behaviour a total stranger would get if they surfed the Internet to your Web page URL. If this type of browser check indicates no authority problems, then it is possible that your Web server (or surrounding systems) have been configured to disallow certain patterns of HTTP traffic. In other words, HTTP communication from a well-known Web browser is allowed, but automated communication from other systems is rejected with an 403 error code. This is unusual, but may indicate a very defensive security policy around your Web server. Fixing 403 errors - CheckUpDown The first question is whether the Web page for your URL is freely available to everyone on the Internet. If this is not the case, then you may need to provide two items 2. Web Site User ID and 3. Web Site Password for your CheckUpDown