Wednesday, 19 September 2012

Request Function Output

           
            System.out.println(" Auth Type -> " + request.getAuthType());
            System.out.println(" Content Type -> " + request.getContentType());
            System.out.println(" Char Encod -> " + request.getCharacterEncoding());
            System.out.println(" Context getContextPath -> " + request.getContextPath());
            System.out.println(" Context getLocalAddr -> " + request.getLocalAddr());
            System.out.println(" Context getLocalName -> " + request.getLocalName());
            System.out.println(" Context getMethod -> " + request.getMethod());
            System.out.println(" getPathInfo -> " + request.getPathInfo());
            System.out.println(" getPathTranslated -> " + request.getPathTranslated());
            System.out.println(" getProtocol -> " + request.getProtocol());
            System.out.println(" getQueryString -> " + request.getQueryString());
            System.out.println(" getRemoteAddr -> " + request.getRemoteAddr());
            System.out.println(" getRemoteHost -> " + request.getRemoteHost());
            System.out.println(" getRemoteUser -> " + request.getRemoteUser());
            System.out.println(" getRequestURI -> " + request.getRequestURI());
            System.out.println(" getRequestedSessionId -> " + request.getRequestedSessionId());
            System.out.println(" getServerName -> " + request.getServerName());
            System.out.println(" getScheme -> " + request.getScheme());
            System.out.println(" getServletPath -> " + request.getServletPath());
            System.out.println(" toString -> " + request.toString());
           
            Enumeration paramNames = request.getParameterNames();
            while(paramNames.hasMoreElements())
            {
                String headerName = (String)paramNames.nextElement();
                System.out.println(">>" + "<TR><TD>" + headerName);
            }
                   
            Enumeration headerNames = request.getHeaderNames();
            while(headerNames.hasMoreElements())
            {
                String headerName = (String)headerNames.nextElement();
                System.out.println(">>" + "<TR><TD>" + headerName);
            }

Output:
INFO:  Auth Type -> null
INFO:  Content Type -> application/x-www-form-urlencoded
INFO:  Char Encod -> null
INFO:  Context getContextPath -> /JSPServlet
INFO:  Context getLocalAddr -> 0:0:0:0:0:0:0:1
INFO:  Context getLocalName -> 0:0:0:0:0:0:0:1
INFO:  Context getMethod -> POST
INFO:  getPathInfo -> null
INFO:  getPathTranslated -> null
INFO:  getProtocol -> HTTP/1.1
INFO:  getQueryString -> null
INFO:  getRemoteAddr -> 0:0:0:0:0:0:0:1
INFO:  getRemoteHost -> 0:0:0:0:0:0:0:1
INFO:  getRemoteUser -> null
INFO:  getRequestURI -> /JSPServlet/HelloServlet
INFO:  getRequestedSessionId -> ee087faae47c5700828ee4bf90c9
INFO:  getServerName -> localhost
INFO:  getScheme -> http
INFO:  getServletPath -> /HelloServlet
INFO:  toString -> org.apache.catalina.connector.RequestFacade@caf3796
INFO: >><TR><TD>name1
INFO: >><TR><TD>name2
INFO: >><TR><TD>host
INFO: >><TR><TD>user-agent
INFO: >><TR><TD>accept
INFO: >><TR><TD>accept-language
INFO: >><TR><TD>accept-encoding
INFO: >><TR><TD>dnt
INFO: >><TR><TD>connection
INFO: >><TR><TD>referer
INFO: >><TR><TD>cookie
INFO: >><TR><TD>content-type
INFO: >><TR><TD>content-length

JAX WS Web service Flow


> Service Class is extended:

public class WSObjectContext extends Service

public WSObjectContext(URL wsdlURL, QName qualifiedServiceName)
{
        super(wsdlURL, qualifiedServiceName);
}



> Service Class inside build ServiceDelegate object (Service Delegate is Abstract Class class) (IN WS.SPI Package).
getPort() is returned from Service Delegate

> ServiceDelegate is created using
      Provider Abstract Class (In WS.SPI Package) and
             in Provider Abstract class there is provider method
             which returns Implementation of Provider Class (use FactoryFinder method)

      Provider for Provider class is : com.sun.xml.internal.ws.spi.ProviderImpl

> ProviderImpl class have createServiceDelegate() implementation which returns  WSServiceDelegate object which is again class of com.sun.xml.internal.ws package


The whole implementation present in rt.jar. com.sun package contains oracle reference implementations of the standard Java (EE) APIs

Java Beans - what are these?

Reusable
Software components
separate presentation layer from business logic
follow certain specification
use getter and setter method to invoke various methods
helps to seperate teams of presentation and business logic and bean communicate between them

JAX - WS Package Contents

In JDK 6





 

Monday, 10 September 2012

Correlation ID and Message ID in JMS

i checked message header of two messages coming from WMQ server and found that Correlation ID is same for two messages but Message ID are different, as shown below:

  JMSMessageID:    ID:414d5120514d44332020202020202020ece34b503d2d7428
  JMSTimestamp:    1347271147937
  JMSCorrelationID:ID:414d5120514d44332020202020202020ece34b5005e87120
 
 
   JMSMessageID:    ID:414d5120514d44332020202020202020ece34b50292d7428
  JMSTimestamp:    1347271144225
  JMSCorrelationID:ID:414d5120514d44332020202020202020ece34b5005e87120 (Same as above)

so it means both are seperate entity.





What comes in JMS Message object?

Here is data i retrieved from a JMS object call connected to WMQ:

  JMS Message class : jms_text
  JMSType :         null
  JMSDeliveryMode : 2
  JMSExpiration :   0
  JMSPriority :     4
  JMSMessageID :    ID:414d5120514d44332020202020202020ece34b503d2d7428
  JMSTimestamp :    1347271147937
  JMSCorrelationID : ID:414d5120514d44332020202020202020ece34b5005e87120
  JMSDestination :  topic://Cord_1/1
  JMSReplyTo :      null
  JMSRedelivered:  false
  JMS_IBM_PutDate:20120910
  JMSXAppID : QMD3                       
  JMS_IBM_Format : MQSTR  
  JMS_IBM_PutApplType : 26
  JMS_IBM_MsgType : 8
  JMSXUserID : mqufn2     
  JMS_IBM_PutTime : 09590803
  JMSXDeliveryCount : 1
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns6:envelope xmlns:ns2="http://n.org/esb />

Implementation of Message Interface is given in class :  com.ibm.jms.JMSTextMessage