tag:blogger.com,1999:blog-46989495816050599102024-02-17T21:05:43.813-08:00IT Knowledge Sharing | Interview questionsKnowledgeServe Teamhttp://www.blogger.com/profile/11999798175640673544noreply@blogger.comBlogger209125tag:blogger.com,1999:blog-4698949581605059910.post-9009521537002496232018-08-25T02:49:00.001-07:002018-08-25T02:49:20.454-07:00Read pubsub message publish time using Apache beam with Google dataflow<div dir="ltr" style="text-align: left;" trbidi="on">
This is a simple message to read publishTime of a message when reading using PubSub IO.<br />
<br />
@ProcessElement<br /> public void processElement(DoFn<String, MessageDTO>.ProcessContext c) throws Exception {<br /> <br /> MessageDTO dataPacket = c.element();<br /> <br /> Instant time = c.timestamp();<br /> <br />
dto.setPubsubTimestamp(time.toDateTime());<br /><br /> c.output(dto);<br /> }</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-19207245459845068492017-09-05T05:14:00.000-07:002017-09-05T05:14:19.513-07:00Handle CORS problem using java (Servlet/Filter)<div dir="ltr" style="text-align: left;" trbidi="on">
Handle CORS problem using java (Servlet/Filter)<br />
<br />
1. Make a Filter to handle all CORS request<br />
<br />
<blockquote class="tr_bq">
import java.io.IOException;<br />import javax.servlet.Filter;<br />import javax.servlet.FilterChain;<br />import javax.servlet.FilterConfig;<br />import javax.servlet.ServletException;<br />import javax.servlet.ServletRequest;<br />import javax.servlet.ServletResponse;<br />import javax.servlet.http.HttpServletRequest;<br />import javax.servlet.http.HttpServletResponse;<br /><br />/**<br /> * Servlet Filter implementation class CORSFilter<br /> */<br />public class CORSFilter implements Filter {<br /><br /> <br /> public CORSFilter() {<br /> // TODO Auto-generated constructor stub<br /> }<br /><br /> <br /> public void destroy() {<br /> // TODO Auto-generated method stub<br /> }<br /><br /> <br /> <br /> public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain) throws IOException, ServletException {<br /> HttpServletRequest request = (HttpServletRequest) servletRequest;<br /> <br /> HttpServletResponse resp = (HttpServletResponse) servletResponse;<br /> resp.addHeader("Access-Control-Allow-Origin","*");<br /> resp.addHeader("Access-Control-Allow-Methods","GET,POST");<br /> resp.addHeader("Access-Control-Allow-Headers","Origin, X-Requested-With, Content-Type, Accept, access-token");<br /><br /> // Just ACCEPT and reply OK if OPTIONS for prefetch request<br /> if ( request.getMethod().equals("OPTIONS") ) {<br /> resp.setStatus(HttpServletResponse.SC_OK);<br /> return;<br /> }<br /> chain.doFilter(request, servletResponse);<br /> }<br /><br /> public void init(FilterConfig fConfig) throws ServletException {<br /> // TODO Auto-generated method stub<br /> }<br /><br />}</blockquote>
2. Use this filter in web.xml<br />
<blockquote class="tr_bq">
<filter><br /> <filter-name>CorsFilter</filter-name><br /> <filter-class>com.example.web.servlets.CORSFilter</filter-class><br /> </filter><br /> <br /> <filter-mapping><br /> <filter-name>CorsFilter</filter-name><br /> <url-pattern>/*</url-pattern><br /> </filter-mapping> </blockquote>
<br />
Now you can use all request in another application where it will by pass CORS errors.</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-16580580867975134452017-08-31T03:51:00.000-07:002017-08-31T03:51:06.142-07:00Read Images from a xlsx file using Apache POI<div dir="ltr" style="text-align: left;" trbidi="on">
This article is all about how to read and download images inside a file in xlsx format. We will use Apache POI using java.<br />
<br />
1. Maven dependencies<br /><ul style="text-align: left;">
<li>commons-logging-1.2.jar</li>
<li> commons-collections4-4.1.jar</li>
<li>openxml4j-1.0-betapoi-3.16.jar</li>
<li>poi-ooxml-3.16.jar</li>
<li>poi-ooxml-schemas-3.16.jar</li>
<li>xmlbeans-2.6.0.jar</li>
<li>servlet-api </li>
</ul>
2. Sharing java code<br />
<br />
<br />
<blockquote>
import java.io.File;<br />import java.io.FileInputStream;<br />import java.io.FileNotFoundException;<br />import java.io.FileOutputStream;<br />import java.io.IOException;<br />import java.io.InputStream;<br />import java.util.ArrayList;<br />import java.util.Iterator;<br />import java.util.LinkedHashMap;<br />import java.util.List;<br />import java.util.Map;<br /><br />import org.apache.poi.ss.usermodel.PictureData;<br />import org.apache.poi.xssf.usermodel.XSSFCell;<br />import org.apache.poi.xssf.usermodel.XSSFDrawing;<br />import org.apache.poi.xssf.usermodel.XSSFPicture;<br />import org.apache.poi.xssf.usermodel.XSSFRow;<br />import org.apache.poi.xssf.usermodel.XSSFShape;<br />import org.apache.poi.xssf.usermodel.XSSFSheet;<br />import org.apache.poi.xssf.usermodel.XSSFWorkbook;<br /><br /><br />public class GetImageShapeFromExcel {<br /><br /> @SuppressWarnings("resource")<br /> public static void main(String[] args) {<br /> try {<br /> String fileLoc = "/Users/Desktop/TestExcel.xlsx";<br /> String targetDir="/Users/Desktop/images/”;<br /> System.out.println("Reading fileLoc :" + fileLoc);<br /> <br /> <br /> <br /> InputStream ExcelFileToRead = new FileInputStream(fileLoc);<br /> XSSFWorkbook wb = new XSSFWorkbook(ExcelFileToRead);<br /> XSSFSheet sheet = wb.getSheetAt(0);<br /><br /> XSSFDrawing xssDrawing = sheet.getDrawingPatriarch();<br /><br /> List<XSSFShape> shapes = xssDrawing.getShapes();<br /> <br /> Iterator rows = sheet.rowIterator();<br /> XSSFRow row; <br /> XSSFCell cell;<br /> <br /> <br /> <br /> int shapeCount=0; //skiping first<br /> for (XSSFShape shape : shapes) {<br /> <br /> <br /> <br /> if (shape instanceof XSSFPicture) {<br /> <br /> <br /> XSSFPicture hssfPicture = (XSSFPicture) shape;<br /> PictureData data = hssfPicture.getPictureData();<br /> byte [] picData = data.getData();<br /> FileOutputStream fos = new FileOutputStream(new File(targetDir+”image_”+ shapeCount +”.jpg"));<br /> fos.write(picData);<br /> fos.close();<br /> <br /> //String filename = hssfPicture.getFileName();<br /> int rowIndex = hssfPicture.getClientAnchor().getRow1();<br /> int colIndex = hssfPicture.getClientAnchor().getCol1();<br /> System.out.println("Picture is located row: " + rowIndex+ ", col: " + colIndex);<br /> <br /> }<br /> <br /> shapeCount++;<br /> }<br /> <br /> <br /> <br /><br /> } catch (FileNotFoundException e) {<br /> System.out.println("FileNotFoundException : " + e.getMessage());<br /> e.printStackTrace();<br /> } catch (IOException e) {<br /> System.out.println("IOException : " + e.getMessage());<br /> e.printStackTrace();<br /> }<br /> }<br />}</blockquote>
<br /></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-65571821328270657822017-08-31T03:40:00.000-07:002017-08-31T03:40:04.287-07:00Read Excel using Apache POI - Exception in thread "main" org.apache.poi.poifs.filesystem.OfficeXmlFileException: <div dir="ltr" style="text-align: left;" trbidi="on">
<style type="text/css">p { margin-bottom: 0.25cm; line-height: 120%; }code.cjk { font-family: "Courier New",monospace; }</style>
<br />
<div style="line-height: 100%; margin-bottom: 0cm; text-align: left;">
</div>
<div style="line-height: 100%; margin-bottom: 0cm; text-align: left;">
<span style="font-family: "verdana" , sans-serif; font-size: small;">Read Excel using Apache POI - Challenges</span></div>
<div style="line-height: 100%; margin-bottom: 0cm; text-align: left;">
<span style="font-family: "verdana" , sans-serif; font-size: small;">------------------------------------------------ </span></div>
<div style="line-height: 100%; margin-bottom: 0cm; text-align: left;">
<span style="font-family: "verdana" , sans-serif; font-size: small;">1) E</span><span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;">xception
in thread "main"
org.apache.poi.poifs.filesystem.OfficeXmlFileException: The supplied
data appears to be in the Office 2007+ XML. You are calling the part
of POI that deals with OLE2 Office Documents. You need to call a
different part of POI to process this data (eg XSSF instead of HSSF)</span></code></span></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<span style="font-size: small;">Add following maven dependency</span><br />
<div style="text-align: left;">
<style type="text/css">pre.cjk { font-family: "Courier New",monospace; }p { margin-bottom: 0.25cm; line-height: 120%; }code.cjk { font-family: "Courier New",monospace; }</style>
</div>
<blockquote class="tr_bq">
<div style="line-height: 100%; margin-bottom: 0cm; text-align: left;">
<span style="font-size: small;"><code class="western">
</code><code class="western"><span style="font-family: "verdana" , sans-serif;">--
Use poi-ooxml from xlsx files while poi for xls</span></code></span></div>
<div style="text-align: left;">
</div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"><!-- POI : Excel library --></span></code>
<code class="western"><span style="font-family: "verdana" , sans-serif;"> </span></code></span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"><dependency></span></code>
<code class="western"> </code><code class="western"><span style="font-family: "verdana" , sans-serif;"> </span></code></span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"><groupId>org.apache.poi</groupId></span></code> </span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"> </code><code class="western"><span style="font-family: "verdana" , sans-serif;"><artifactId>poi</artifactId></span></code>
<code class="western"> </code><code class="western"><span style="font-family: "verdana" , sans-serif;"> </span></code></span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"><version>${poi.version}</version></span></code> </span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"></dependency></span></code>
<code class="western"><span style="font-family: "verdana" , sans-serif;"> </span></code></span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"><dependency></span></code></span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"> < </span></code><code class="western"><span style="font-family: "verdana" , sans-serif;">groupId>org.apache.poi</groupId></span></code> </span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"> <artifactId>poi-ooxml</artifactId></span></code> </span></div>
<div class="western" style="text-align: left;">
<span style="font-size: small;"><code class="western"> </code><code class="western"><span style="font-family: "verdana" , sans-serif;"><version>${poi.version}</version></span></code></span></div>
<div style="line-height: 100%; margin-bottom: 0cm; text-align: left;">
<span style="font-size: small;"><code class="western"><span style="font-family: "verdana" , sans-serif;"> </span></code>
<code class="western"><span style="font-family: "verdana" , sans-serif;"></dependency <style type="text/css">p { margin-bottom: 0.25cm; line-height: 120%; }code.cjk { font-family: "Courier New",monospace; }</style><code class="western"><span style="font-family: "verdana" , sans-serif;"></span></code></span></code></span></div>
</blockquote>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<blockquote class="tr_bq" style="text-align: left;">
<div style="line-height: 100%; margin-bottom: 0cm; text-align: left;">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;"><code class="western"><span style="font-family: Verdana, sans-serif;">2)Caused
by: java.lang.ClassNotFoundException: org.apache.xmlbeans.XmlException</span></code></span></code></span></span></span></div>
</blockquote>
<blockquote class="tr_bq" style="text-align: left;">
<div style="text-align: left;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></span></div>
<div style="text-align: left;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"></code></span></span></div>
<div style="line-height: 100%; margin-bottom: 0cm;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></span></div>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></span>
<div style="line-height: 100%; margin-bottom: 0cm;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;"><span style="font-family: Verdana, sans-serif;">--
Reading excel using apache POI – Add library </span><code class="western"><span style="font-family: Verdana, sans-serif;">xmlbeans-x.x.x.jar
</span></code><code class="western"><span style="font-family: Verdana, sans-serif;">from
maven</span></code></span></code></span></span></div>
</blockquote>
<br />
<blockquote class="tr_bq" style="text-align: left;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></span><div style="text-align: left;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"></code></span></span></div>
<div style="line-height: 100%; margin-bottom: 0cm;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></span></div>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></span>
<div style="line-height: 100%; margin-bottom: 0cm;">
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;"><code class="western"><span style="font-family: Verdana, sans-serif;">3)
Exception in thread "main" java.lang.NoClassDefFoundError:
org/apache/commons/collections4/ListValuedMap</span></code></span></code></span></span></div>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
<div style="line-height: 100%; margin-bottom: 0cm;">
<code class="western">
</code><code class="western"><span style="font-family: Verdana, sans-serif;">--
add library from common collections (from maven)</span></code></div>
</span></code></span></span><div style="text-align: left;">
<span style="font-size: x-small;"><code class="western"></code></span></div>
<div style="line-height: 100%; margin-bottom: 0cm;">
<span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></div>
<span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span>
<div style="line-height: 100%; margin-bottom: 0cm;">
<span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;"><code class="western"><span style="font-family: Verdana, sans-serif;"><dependency></span></code></span></code></span></div>
<span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
<div style="line-height: 100%; margin-bottom: 0cm;">
<code class="western">
</code><code class="western"><span style="font-family: Verdana, sans-serif;"><groupId>org.apache.commons</groupId></span></code></div>
<div style="line-height: 100%; margin-bottom: 0cm;">
<code class="western">
</code><code class="western"><span style="font-family: Verdana, sans-serif;"><artifactId>commons-collections4</artifactId></span></code></div>
<div style="line-height: 100%; margin-bottom: 0cm;">
<code class="western">
</code><code class="western"><span style="font-family: Verdana, sans-serif;"><version>4.1</version></span></code></div>
<div style="line-height: 100%; margin-bottom: 0cm;">
<code class="western"><span style="font-family: Verdana, sans-serif;"></dependency></span></code></div>
</span></code></span></span></blockquote>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="font-size: x-small;"><code class="western"><span style="font-family: Verdana, sans-serif;">
</span></code></span></span></span><br />
<div style="text-align: left;">
</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-36223160142758520122017-08-25T04:24:00.002-07:002017-08-25T04:24:23.089-07:00Create and write Excel file using Google App Engine<div dir="ltr" style="text-align: left;" trbidi="on">
This article explains how you can export data in excel using Google App Engine.<br />
<br />
1. Apache POI library -- Here is maven dependency<br />
<blockquote class="tr_bq">
<span style="color: red;"> <dependency><br /> <groupId>org.apache.poi</groupId><br /> <artifactId>poi</artifactId><br /> <version>3.16</version></span></blockquote>
<br />
2. Download Servlet<br />
<br />
<blockquote class="tr_bq">
<span style="color: red;">import java.io.FileOutputStream;<br />import java.io.IOException;<br />import java.util.ArrayList;<br />import java.util.HashMap;<br />import java.util.List;<br />import java.util.Map;<br /><br />import javax.servlet.ServletException;<br />import javax.servlet.ServletOutputStream;<br />import javax.servlet.http.HttpServlet;<br />import javax.servlet.http.HttpServletRequest;<br />import javax.servlet.http.HttpServletResponse;<br /><br />import org.apache.poi.hssf.usermodel.HSSFCell;<br />import org.apache.poi.hssf.usermodel.HSSFRow;<br />import org.apache.poi.hssf.usermodel.HSSFSheet;<br />import org.apache.poi.hssf.usermodel.HSSFWorkbook;<br /><br /><br /><br /><br />public class ExcelServlet extends HttpServlet {<br /> private static final long serialVersionUID = 1L;<br /> <br /> private static final String FILE_NAME = "/Users/user1/Desktop/MyFirstExcel.xlsx";<br /><br /> <br /> protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {<br /> <br /> DataDTO data1=new DataDTO("A","1","2017");</span><br />
<span style="color: red;"> DataDTO data1=new DataDTO("B","2","2017");</span><br />
<span style="color: red;"> DataDTO data1=new DataDTO("C","3","2017");</span><br />
<span style="color: red;"><br /> List<DataDTO> dataList =new ArrayList<>();</span><br />
<span style="color: red;"> dataList.add(data1);</span><br />
<span style="color: red;"> dataList.add(data2);</span><br />
<span style="color: red;"> dataList.add(data3);</span><br />
<span style="color: red;"><br /> String fileName="Export.xlsx";<br /> response.setContentType("application/xls");<br /> response.setHeader("Content-Disposition", "attachment; filename="+fileName);<br /> exportDataUsingObject(request, response,dataList);<br /> <br /> }<br /> <br /> <br /> <br /> private static void exportDataUsingObject(HttpServletRequest request, HttpServletResponse response, List<DataDTO> dataList) throws IOException{<br /> <br /> String sheetName = "Sheet1";//name of sheet<br /><br /> HSSFWorkbook wb = new HSSFWorkbook();<br /> HSSFSheet sheet = wb.createSheet(sheetName) ;<br /> <br /> String [] objHeaderArr=new String[] {<br /> "Column1", "Column2", "Column3"<br /> };<br /> <br /> <br /> if(dataList !=null){<br /> int rowCount=0;<br /> HSSFRow row = sheet.createRow(++rowCount);<br /> int cellnum = 0;<br /> for (String obj : objHeaderArr) {<br /> HSSFCell cell = row.createCell(cellnum++);<br /> cell.setCellValue(obj);<br /> }<br /> //Add remaining rows<br /> for(DimensionVADTO obj:dataList){<br /> row = sheet.createRow(++rowCount);<br /> writeDataDTO(obj, row);<br /> }<br /> }<br /> <br /> ServletOutputStream outputStream = response.getOutputStream();<br /> outputStream.write(wb.getBytes());<br /> System.out.println("****************************************");<br /> }<br /><br /> private static void writeDataDTO(DataDTO dtoObj, HSSFRow row) {<br /> <br /> HSSFCell cell = row.createCell(0);<br /> cell.setCellValue(dtoObj.getColumn1());<br /> <br /> cell = row.createCell(1);<br /> cell.setCellValue(dtoObj.getColumn2());<br /> <br /> cell = row.createCell(2);<br /> cell.setCellValue(dtoObj.getColumn3());<br /> <br /> <br /> <br /> }<br /> <br /> public static void writeXLSFile() throws IOException {<br /> <br /> String excelFileName = FILE_NAME;//name of excel file<br /><br /> String sheetName = "Sheet1";//name of sheet<br /><br /> HSSFWorkbook wb = new HSSFWorkbook();<br /> HSSFSheet sheet = wb.createSheet(sheetName) ;<br /><br /> //iterating r number of rows<br /> for (int r=0;r < 5; r++ ){<br /> HSSFRow row = sheet.createRow(r);<br /> <br /> //iterating c number of columns<br /> for (int c=0;c < 5; c++ ){<br /> HSSFCell cell = row.createCell(c);<br /> <br /> cell.setCellValue("Test Cell "+r+" "+c);<br /> }<br /> }<br /> <br /> FileOutputStream fileOut = new FileOutputStream(excelFileName);<br /> <br /> //write this workbook to an Outputstream.<br /> wb.write(fileOut);<br /> fileOut.flush();<br /> fileOut.close();<br /> }<br /><br /> public static void main(String[] args) {<br /> <br /> try {<br /> writeXLSFile(); // If you want to run local<br /> } catch (IOException e) {<br /> e.printStackTrace();<br /> }<br /> <br /> } </span></blockquote>
<br /></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-51610459560368093222017-08-08T22:06:00.002-07:002017-08-08T22:06:23.395-07:00Git Commands : How to remove all files deleted from index<div dir="ltr" style="text-align: left;" trbidi="on">
Remove all deleted files from git index<br />
<br />
<blockquote class="tr_bq">
git ls-files --deleted -z | xargs -0 git rm</blockquote>
</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-86117434348780845022017-05-25T04:55:00.002-07:002017-05-25T04:55:27.016-07:00Create java client from WSDL for Google App engine<div dir="ltr" style="text-align: left;" trbidi="on">
<div>
This post will explain how to consume SOAP based web services on Google App Engine platform.<br />
<br /><ol style="text-align: left;">
<li>Keep your wsdl files in resources/wsdl folder</li>
<li>Make these files entry in appengine-web.xml like</li>
<li> <static-files><br /> <include path="/**.wsdl"/><br /> <include path="/**.WSDL"/><br /> </static-files></li>
<li> Now update POM file for wsdl to java plugin</li>
</ol>
</div>
<span style="color: #38761d;"> <plugin><br /> <groupId>org.apache.cxf</groupId><br /> <artifactId>cxf-codegen-plugin</artifactId><br /> <version>3.0.1</version><br /> <executions><br /> <execution><br /> <id>generate-sources</id><br /> <phase>generate-sources</phase><br /> <configuration> <br /> <sourceRoot>${basedir}/src/main/java</sourceRoot> <br /> <wsdlOptions><br /> <wsdlOption><br /> <wsdl>src/main/resources/wsdl/ReadData.wsdl</wsdl> <br /> <wsdlLocation>https://${appengine.app.id}.appspot.com/wsdl/ReadData.wsdl</wsdlLocation><br /> <extraargs><br /> <extraarg>-p</extraarg><br /> <extraarg>com.example.ws.readdata</extraarg><br /> </extraargs> <br /> </wsdlOption><br /> <wsdlOption><br /> <wsdl>src/main/resources/wsdl/SaveData.wsdl</wsdl><br /> <wsdlLocation>https://${appengine.app.id}.appspot.com/wsdl/SaveData.wsdl</wsdlLocation><br /> <extraargs><br /> <extraarg>-p</extraarg><br /> <extraarg>com.example.ws.savedata</extraarg><br /> </extraargs><br /> </wsdlOption><br /> <br /> </wsdlOptions><br /> </configuration><br /> <goals><br /> <goal>wsdl2java</goal><br /> </goals><br /> </execution><br /> </executions><br /></plugin></span><div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Now you can use maven commands mvn clean install and stubs will be generated in <span style="color: #38761d;">com.example.ws.savedata <span style="color: black;">and </span></span><span style="color: #38761d;">com.example.ws.readdata <span style="color: black;">packages.</span></span><br /> </div>
</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-67479210618576749772017-05-25T04:44:00.001-07:002017-05-25T04:44:18.016-07:00Convert pfx file into jks using java<div dir="ltr" style="text-align: left;" trbidi="on">
This is a post which shows how to convert pfx file into jks.<br />
<br />
Prerequisites : Java 6+<br />
Step 1: Use cmd with java in your classpath<br />
<br />
keytool -importkeystore -srckeystore testKey.pfx -srcstoretype pkcs12 -srcalias <myAliasName><br /> -destkeystore jksFile -deststoretype jks -deststorepass password -destalias <alias> <br />
<br /></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-55411488940249493472017-05-25T04:36:00.001-07:002017-05-25T04:36:52.914-07:00Java Client with certificate authentication to access SOAP Webservice<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;">This is an example to explain how to authenticate java stub client with certification and send request to SOAP WSDL.</span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;">public static void applyCertificateAuthentication(MyWsdlDataRequest wsdlClientRequest)<br /> throws Exception {</span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"><br /> String keyStoreLocation="resources/keys/testKey.jks";</span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"> String password="key@12345";<br /> ClassLoader classLoader = this.class.getClassLoader();<br /> InputStream keyInputStream = classLoader.getResourceAsStream(keyStoreLocation);<br /><br /> SSLContext sc = SSLContext.getInstance("SSLv3");<br /> KeyManagerFactory factory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());<br /> KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());<br /> keyStore.load(keyInputStream, password.toCharArray());<br /> factory.init(keyStore, password.toCharArray());<br /> sc.init(factory.getKeyManagers(), null, null);<br /> </span></span></span><br />
<br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"> MyWsdlService serviceImpl = new MyWsdlService (); </span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"> MyWsdlDataStub servicePort = serviceImpl.getPort(MyWsdlDataStub .class); BindingProvider bp = (BindingProvider) servicePort;</span></span></span><br />
<br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;">((BindingProvider) servicePort).getRequestContext().put("com.sun.xml.internal.ws.transport.https.client.SSLSocketFactory",<br /> sc.getSocketFactory());</span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"> </span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"> MyWsdlDataResponse response = servicePort.siSaveSocDataOut(wsdlClientRequest);</span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"><br /></span></span></span>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="color: #38761d;"> }</span></span></span></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-88111528873823691972016-08-08T03:51:00.005-07:002016-08-08T03:53:09.507-07:00Configure MDC with SLF4j Logback file in java<div dir="ltr" style="text-align: left;" trbidi="on">
This article is all about how you configure MDC logs with SLF4J and logback.<br />
<br />
<b>1. Maven POM dependencies</b>: Please add maven dependencies as given below.<br />
<br />
<span style="color: #274e13;"> <!-- Logging with SLF4J & LogBack --></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><dependency></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><groupId>org.slf4j</groupId></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><artifactId>slf4j-api</artifactId></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><version>1.7.5</version></span><span style="color: #274e13; white-space: pre;"> </span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></dependency></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><dependency></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><groupId>ch.qos.logback</groupId></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><artifactId>logback-classic</artifactId></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><version>1.0.13</version></span><span style="color: #274e13; white-space: pre;"> </span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></dependency></span><br />
<br />
<b>2. Configure logback.xml file</b><br />
<br />
<span style="color: #274e13;"><?xml version="1.0" encoding="UTF-8"?></span><br />
<span style="color: #274e13;"><configuration scan="true" scanPeriod="30 seconds"></span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><property name="DEV_HOME" value="c:/logs" /></span><br />
<span style="color: #274e13;"> <contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator"></span><br />
<span style="color: #274e13;"> <resetJUL>true</resetJUL></span><br />
<span style="color: #274e13;"> </contextListener></span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"> </span><br />
<span style="color: #274e13;"> </span><span style="color: red;"> <appender name="FILE-THREAD" class="ch.qos.logback.classic.sift.SiftingAppender"></span><br />
<span style="color: red;"> <discriminator></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><key>logFileName</key></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><defaultValue>head0</defaultValue></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span> </discriminator></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span> <sift></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><appender name="FILE-${logFileName}"</span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span>class="ch.qos.logback.core.rolling.RollingFileAppender"></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><file>${DEV_HOME}/mdc.log</file></span><br />
<span style="color: red;"><br /></span>
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><Pattern></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span>%d{yyyy-MM-dd HH:mm:ss} [%thread] %level %logger{35} - %msg%n</span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span></Pattern></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span></encoder></span><br />
<span style="color: red;"><br /></span>
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><rollingPolicy</span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span>class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><FileNamePattern>${DEV_HOME}/mdc.%i.log.zip</span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span></FileNamePattern></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><MinIndex>1</MinIndex></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><MaxIndex>10</MaxIndex></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span></rollingPolicy></span><br />
<span style="color: red;"><br /></span>
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><triggeringPolicy</span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span>class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span><MaxFileSize>10MB</MaxFileSize></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span></triggeringPolicy></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span></appender></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span> </sift></span><br />
<span style="color: red;"><span class="Apple-tab-span" style="white-space: pre;"> </span></appender></span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: red;"> </span></span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><appender name="FILE_APPENDER" class="ch.qos.logback.core.FileAppender"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><file>${DEV_HOME}/mdc.log</file></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><Pattern></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>%X{clientName}, [%thread], %-5level %logger{36} - %msg%n</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></Pattern></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></encoder><span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></appender><span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: #274e13;"> </span></span><br />
<span style="color: #274e13;"> </span><br />
<span style="color: #274e13;"> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><layout class="ch.qos.logback.classic.PatternLayout"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><Pattern></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></Pattern></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></layout></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></appender></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><appender name="FILE-ERROR"</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>class="ch.qos.logback.core.rolling.RollingFileAppender"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><file>${DEV_HOME}/error.log</file></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><Pattern></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>%d{yyyy-MM-dd HH:mm:ss} - %msg%n</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></Pattern></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></encoder></span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><!-- rollover daily --></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><fileNamePattern>${DEV_HOME}/archived/error.%d{yyyy-MM-dd}.%i.log</span><br />
<span style="color: #274e13;"> </fileNamePattern></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><timeBasedFileNamingAndTriggeringPolicy</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><maxFileSize>10MB</maxFileSize></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></timeBasedFileNamingAndTriggeringPolicy></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></rollingPolicy></span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></appender></span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: #274e13;"> </span></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><!-- Send logs to both console and file audit --></span><br />
<span style="color: #274e13;"> <!-- here </span><span style="color: #4c1130;">com.example</span><span style="color: #274e13;"> is my root package </span><span style="color: #274e13;">--></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><logger name="com.example" level="INFO"</span><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>additivity="false"></span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: #274e13;"> </span></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><appender-ref ref="FILE-THREAD" /><span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><appender-ref ref="STDOUT" /></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><appender-ref ref="FILE_APPENDER" /></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></logger></span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><root level="ERROR"></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span><appender-ref ref="FILE-ERROR" /></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span></root></span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: #274e13;"> </span></span><br />
<br />
<span style="color: #274e13;"></configuration></span><br />
<div>
<br /></div>
<div>
<br /></div>
<b>3. Use logging in java file</b><br />
<br />
<span style="color: #20124d;">package com.example.servlet;</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;">import java.io.IOException;</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;">import javax.servlet.Filter;</span><br />
<span style="color: #20124d;">import javax.servlet.FilterChain;</span><br />
<span style="color: #20124d;">import javax.servlet.FilterConfig;</span><br />
<span style="color: #20124d;">import javax.servlet.ServletException;</span><br />
<span style="color: #20124d;">import javax.servlet.ServletRequest;</span><br />
<span style="color: #20124d;">import javax.servlet.ServletResponse;</span><br />
<span style="color: #20124d;">import javax.servlet.annotation.WebFilter;</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;">import org.slf4j.MDC;</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;">@WebFilter( filterName = "mdcFilter", urlPatterns = { "/*" } )</span><br />
<span style="color: #20124d;">public class MDCFilter implements Filter {</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>@Override</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>public void destroy() {</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>@Override</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>public void doFilter( final ServletRequest request, final ServletResponse response, final FilterChain chain )</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>throws IOException, ServletException {</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>// Get the parameter value.</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>final String parameter = request.getParameter( "clientName" );</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>// Put it in the MDC map.</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>MDC.put( "clientName", parameter );</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>try {</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>chain.doFilter( request, response );</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>} finally {</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>// When the control returns to the filter, clean it.</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>MDC.remove( "clientName" );</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>@Override</span><br />
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>public void init( final FilterConfig filterConfig ) throws ServletException {</span><br />
<span style="color: #20124d;"><br /></span>
<span style="color: #20124d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<br />
<span style="color: #20124d;">}</span><br />
<b><br /></b>
<b> 4. You can also use slf4j logger</b><br />
<br />
<span style="color: #0c343d;">package com.example.controller;</span><br />
<span style="color: #0c343d;"><br /></span>
<span style="color: #0c343d;">import java.util.ArrayList;</span><br />
<span style="color: #0c343d;">import java.util.List;</span><br />
<span style="color: #0c343d;"><br /></span>
<span style="color: #0c343d;">import javax.servlet.http.HttpServletRequest;</span><br />
<span style="color: #0c343d;">import javax.servlet.http.HttpSession;</span><br />
<span style="color: #0c343d;"><br /></span>
<span style="color: #0c343d;">.....</span><br />
<span style="color: #0c343d;">.....</span><br />
<span style="color: #0c343d;"><br /></span>
<span style="color: #0c343d;">import org.slf4j.Logger;</span><br />
<span style="color: #0c343d;">import org.slf4j.LoggerFactory;</span><br />
<span style="color: #0c343d;">import org.slf4j.MDC;</span><br />
<br />
<span style="color: #0c343d;"><br /></span>
<span style="color: #0c343d;">@Controller</span><br />
<span style="color: #0c343d;">public class UserController {</span><br />
<span style="color: #0c343d;"><br /></span>
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>private static Logger logger=LoggerFactory.getLogger(UserController.class.getName());</span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: #0c343d;"> </span></span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span><span style="color: #0c343d; white-space: pre;"> </span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>@RequestMapping(value = "/rest/registerUser", method = RequestMethod.POST)</span><br />
<span style="color: #0c343d;"> public @ResponseBody UserDTO registerUser(@RequestParam("name") String name, </span><br />
<span style="color: #0c343d;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>@RequestParam("password") String password, @RequestParam("email") String email,</span><br />
<span style="color: #0c343d;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>@RequestParam("contactNumber") String contactNumber) { <span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: #0c343d;"> </span></span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>try {</span><br />
<span class="Apple-tab-span" style="color: #0c343d; white-space: pre;"> </span><span style="color: #4c1130;">logger.info("Registering user : name :"+name);</span><br />
<span style="color: #4c1130;"> //TODO</span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>} catch (Exception e) {</span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span style="color: #0c343d;"> </span><span style="color: #990000;">logger.error("Failed to register : Exception :"+e.getMessage());</span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span> e.printStackTrace();</span><br />
<span style="color: #0c343d;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #0c343d;"> </span><br />
<span style="color: #0c343d;"> return user;</span><br />
<span style="color: #0c343d;"> }</span><br />
<span style="color: #0c343d;">}</span><br />
<b><br /></b></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-23575983367729003362016-07-14T05:46:00.001-07:002016-07-14T05:46:30.138-07:00Struts 1 with JSON response<div dir="ltr" style="text-align: left;" trbidi="on">
You want to explore struts 1.X with ajax based application which returns JSON as a response, you can go following public repository.<br />
<br />
<a href="https://github.com/youdhveer/struts1">https://github.com/youdhveer/struts1</a></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-60036540499657057052016-07-13T00:14:00.003-07:002016-07-13T00:14:38.394-07:00Load csv file data into MySQL table<div dir="ltr" style="text-align: left;" trbidi="on">
Suppose we have a device table along with following columns.<br />
id(integer),device(varchar),device_data(varchar).<br />
<br />
Now suppose you want to upload data from a <b><i>device.csv</i></b> file like given below.<br />
---------------------------------------------------<br />
"id","device","device_data"<br />
"1","A1","this is test device, model-11"<br />
"2","A2","this is test device, model-12"<br />
"3","A3","this is test device, model-13"<br />
"4","A4","this is test device, model-14"<br />
----------------------------------------------------<br />
<br />
Use following command to insert these values from csv file to table with casting id value from text to integer.<br />
<br />
<br />
<b><span style="color: #274e13;">LOAD DATA INFILE </span><span style="color: #0c343d;">'D:\device.csv'</span><span style="color: #274e13;"> INTO TABLE device </span></b><br />
<b><span style="color: #274e13;">FIELDS TERMINATED BY ',' </span></b><br />
<b><span style="color: #274e13;">ENCLOSED BY '"'</span></b><br />
<b><span style="color: #274e13;">LINES TERMINATED BY '\n'</span></b><br />
<b><span style="color: #274e13;">IGNORE 1 LINES</span></b><br />
<b><span style="color: #274e13;">(@id, device, device_data)</span></b><br />
<b><span style="color: #274e13;">SET id= CONVERT( @id, UNSIGNED INTEGER ) ;</span></b></div>
KnowledgeServe Teamhttp://www.blogger.com/profile/11999798175640673544noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-59309981980187740682015-11-03T04:11:00.002-08:002015-11-03T04:11:16.624-08:00MS SQL Server : How to remove duplicate text in a csv String in table<div dir="ltr" style="text-align: left;" trbidi="on">
Here is the function which will return string after removing duplicate text from a csv cell value.<br />
<br />
<i><span style="color: #274e13;">create function dbo.RemoveDuplicateTextInCSVString(@SOURCE_STR varchar(50))</span></i><br />
<i><span style="color: #274e13;">returns varchar(50)</span></i><br />
<i><span style="color: #274e13;">as</span></i><br />
<i><span style="color: #274e13;">begin </span></i><br />
<i><span style="color: #274e13;"> declare @TEMP_STR varchar(50)</span></i><br />
<i><span style="color: #274e13;"> declare @WORD_STR varchar(50)</span></i><br />
<i><span style="color: #274e13;"><br /></span></i>
<i><span style="color: #274e13;"> set @TEMP_STR = ','</span></i><br />
<i><span style="color: #274e13;"><br /></span></i>
<i><span style="color: #274e13;"> while len(@SOURCE_STR) > 0</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>begin</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>print '--------------------'</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>set @WORD_STR = left(@SOURCE_STR, charindex(',', @SOURCE_STR+',')-1)+','</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>print '@WORD_STR :'+ @WORD_STR</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>if charindex(','+@WORD_STR, @TEMP_STR) = 0</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>begin</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>set @TEMP_STR = @TEMP_STR + @WORD_STR</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>print '@TEMP_STR : '+@TEMP_STR</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>end</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>else</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>print 'found duplicate, remove this..'</span></i><br />
<span class="Apple-tab-span" style="white-space: pre;"><i><span style="color: #274e13;"> </span></i></span><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>set @SOURCE_STR = stuff(@SOURCE_STR, 1, charindex(',', @SOURCE_STR+','), '')</span></i><br />
<i><span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>print '@SOURCE_STR '+@SOURCE_STR</span></i><br />
<i><span style="color: #274e13;"> end</span></i><br />
<i><span style="color: #274e13;"> return @SOURCE_STR</span></i><br />
<i><span style="color: #274e13;">end</span></i></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-49998778007581743392015-10-29T23:56:00.002-07:002015-10-29T23:56:20.168-07:00Collection holds value as a refernce in java<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Value as a Reference example</b> : Here we are fecthing a list from a collection and updating this which leads to automatic update of Map because <span style="color: #20124d;"><b>numList </b>is directly referring to </span><b><span style="color: red;">testmap.</span></b><br />
-----------------------------------<br />
<br />
<br />
public class ValueAsReference{<br />
<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>enum EvenOdd{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>EVEN,ODD<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>public static void main(String ... arg){<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"> <b><span style="color: red;"> </span></b></span><b><span style="color: red;">Map<String,List<String>> testmap=new HashMap<String, List<String>>();</span></b><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>for(int i=0;i<20;i++){<span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>String key="";<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>if(i%2 ==0){<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>key=""+EvenOdd.EVEN;<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}else{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>key=""+EvenOdd.ODD;<span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><b><span style="color: #20124d;">List<String> numList=testmap.get(key);</span></b><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>if(numList==null){<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span> numList=new ArrayList<String>();<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span> numList.add("i="+i);<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span> testmap.put(key, numList);<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}else{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span> numList.add("i="+i);<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>for(String key : testmap.keySet()){<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>System.out.println("key : "+key);<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>System.out.println(testmap.get(key));<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
}<br />
--------------------------------------<br />
Output :<br />
<b><span style="color: #274e13;">key : EVEN</span></b><br />
<b><span style="color: #274e13;">[i=0, i=2, i=4, i=6, i=8, i=10, i=12, i=14, i=16, i=18]</span></b><br />
<b><span style="color: #274e13;">key : ODD</span></b><br />
<b><span style="color: #274e13;">[i=1, i=3, i=5, i=7, i=9, i=11, i=13, i=15, i=17, i=19]</span></b><br />
<div>
<br /></div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-41343078041834008372015-10-19T05:52:00.000-07:002015-10-19T05:52:58.606-07:00Google App Engine deleted default GCS bucket. Is there a way to restore it?<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="background-color: white; color: #222222; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 15px; line-height: 19.5px;">No, there is no way to restore a deleted bucket or object inside a bucket. DELETE operation comes under strong global consistency. Keep in mind that you can use Google Cloud Storage only after enabling billing for your project. It's not free.</span><br />
<span style="background-color: white; color: #222222; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 15px; line-height: 19.5px;"><br /></span>
<span style="background-color: white; font-size: 15px; line-height: 19.5px;"><span style="color: #222222; font-family: Helvetica Neue, Helvetica, Arial, sans-serif;">You can go through <a href="https://cloud.google.com/storage/docs/concepts-techniques">Cloud storage documentation</a> </span></span><br />
<span style="background-color: white; font-size: 15px; line-height: 19.5px;"><span style="color: #222222; font-family: Helvetica Neue, Helvetica, Arial, sans-serif;"><br /></span></span>
<span style="background-color: white;"><span style="color: #222222; font-family: Helvetica Neue, Helvetica, Arial, sans-serif;"><span style="font-size: 15px; line-height: 19.5px;">Bucket will be deleted permanently. You can see </span><a href="https://cloud.google.com/storage/docs/json_api/v1/buckets/delete" style="font-size: 15px; line-height: 19.5px;">google documentation.</a><span style="font-size: 15px; line-height: 19.5px;"> Although a bucket will be deleted only if it is empty, means you have to delete all objects first and then you can delete an empty bucket. Choose bucket carefully as these are unique globally and can not be nested like folders or directories.</span></span></span></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com2tag:blogger.com,1999:blog-4698949581605059910.post-61204790573772512002015-08-28T06:01:00.002-07:002015-08-28T06:01:35.208-07:00Set your application context path in Tomcat 7<div dir="ltr" style="text-align: left;" trbidi="on">
Set Context path in Tomcat 7 or more using catalina.properties file,<br />
<br />
<b>Step 1)</b><br />
Add following lines to <b>catalina.properties</b> file under <tomcat-install dir>/conf directory,<br />
<br />
<span style="color: #274e13;">#myApp war file version</span><br />
<span style="color: blue;">myApp .war=myAppLive -1.0.0.1.war</span><br />
<span style="color: blue;">myApp .path=/myAppLive</span><br />
<br />
<span style="color: #274e13;">#application deployment location</span><br />
<span style="color: blue;">appBase=webapps</span><br />
<br />
<b>Step 2)</b><br />
Now update context path in <Host> node in <b>server.xml</b> file in same location,<br />
<span style="color: red;"><Host name="localhost" appBase="webapps"</span><br />
<span style="color: red;"> unpackWARs="true" autoDeploy="false"></span><br />
<span style="color: red;">...</span><br />
<span style="color: red;">....<span class="Apple-tab-span" style="white-space: pre;"> </span> </span><br />
<span style="color: #073763;"> </span><span style="color: blue;"><Context path="${myApp .path}" docBase="${catalina.base}/${appBase}/${myApp .war}"/></span><br />
<span style="color: red;">...</span><br />
<span style="color: red;">....<span class="Apple-tab-span" style="white-space: pre;"> </span></span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: red;"> </span></span><br />
<span style="color: red;"></Host></span><br />
<div>
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-32992101759663839582015-08-28T05:48:00.004-07:002015-08-28T05:48:36.273-07:00Custom directive with dynamic attribute using angular JS<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Custom directive with dynamic attribute using angular JS</b><br />
<br />
<b>Javascript:</b><br />
<br />
<span style="color: #274e13;">var myApp=angular.module('myApp', []);</span><br />
<span style="color: #274e13;">myApp.controller('myCtrl', ['$scope', function($scope) { </span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"> $scope.data= [</span><br />
<span style="color: #274e13;"> { name: 'A', size: '12' },</span><br />
<span style="color: #274e13;"> { name: 'C', size: '11' },</span><br />
<span style="color: #274e13;"> { name: 'B', size: '10' }</span><br />
<span style="color: #274e13;"> ];</span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;">}])</span><br />
<span style="color: #274e13;">.directive('myOrderList', function(){ </span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"> function link(scope, element, attrs) {</span><br />
<span style="color: #274e13;"> var myData=scope.data; </span><br />
<span style="color: #274e13;"> console.log(attrs);</span><br />
<span style="color: #274e13;"> </span><br />
<span style="color: #274e13;"> var ulElem=element.html('<ol>');</span><br />
<span style="color: #274e13;"> for(var i=0;i<scope.data.length;i++){ </span><br />
<span style="color: #274e13;"> ulElem.append('<li>'+scope.data[i][attrs.value]+'</li>');</span><br />
<span style="color: #274e13;"> } </span><br />
<span style="color: #274e13;"> </span><br />
<span style="color: #274e13;"> }</span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"> return {</span><br />
<span style="color: #274e13;"> link: link</span><br />
<span style="color: #274e13;"> };</span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;">});</span><br />
<br />
<b>HTML CODE:</b><br />
<span style="color: blue;"><div ng-app="myApp"></span><br />
<br />
<span style="color: blue;"><br /></span>
<span style="color: blue;"><div ng-controller="myCtrl"></span><br />
<br />
<span style="color: blue;"> <div my-order-list value="size"></div></span><br />
<span style="color: blue;"> <div my-order-list value="name"></div></span><br />
<span style="color: blue;"><br /></span>
<span style="color: blue;"></div></span><br />
<span style="color: blue;"><br /></span>
<span style="color: blue;"></div></span></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-89801471984716938552015-08-28T05:19:00.002-07:002015-08-28T05:19:54.075-07:00Maven build is failing to include struts-config.xml or web.xml file to target../../WEB-INF directory<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoListParagraph" style="margin-left: 18.05pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
<span style="font-size: 7pt; font-stretch: normal;"> </span><!--[endif]-->Maven build is failing to include
struts-config.xml or web.xml file to target../../WEB-INF directory due to
‘WebContent ‘ as maven needs ‘ webapps ‘<o:p></o:p></div>
<div class="MsoListParagraph" style="margin-left: 18.05pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
<br /></div>
<div class="MsoListParagraph" style="margin-left: 18.05pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
Add this plugin to pom.xml</div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span><span style="background: lightgrey; mso-highlight: lightgrey;">plugin</span><span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>groupId<span style="color: teal;">></span>org.apache.maven.plugins<span style="color: teal;"></</span>groupId<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>artifactId<span style="color: teal;">></span><u>maven</u>-war-<u>plugin</u><span style="color: teal;"></</span>artifactId<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>version<span style="color: teal;">></span>2.2<span style="color: teal;"></</span>version<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>configuration<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>webResources<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>resource<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>directory<span style="color: teal;">></span>${<u>basedir</u>}/WebContent<span style="color: teal;"></</span>directory<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"></</span>resource<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"></</span>webResources<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>warSourceDirectory<span style="color: teal;">></span>WebContent<span style="color: teal;"></</span>warSourceDirectory<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>warSourceExcludes<span style="color: teal;">></span>WebContent/WEB-INF/<u>lib</u>/*.jar<span style="color: teal;"></</span>warSourceExcludes<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"><</span>archiveClasses<span style="color: teal;">></span>false<span style="color: teal;"></</span>archiveClasses<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"></</span>configuration<span style="color: teal;">></span><o:p></o:p></div>
<div class="MsoNoSpacing">
<span style="color: teal;"></</span><span style="background: lightgrey; mso-highlight: lightgrey;">plugin</span><span style="color: teal;">></span></div>
<div class="MsoNormal">
<o:p></o:p></div>
</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-57620169891892618582015-08-28T05:17:00.002-07:002015-08-28T05:17:45.550-07:00Dynamic response by java and handle using ajax jquery for all content types<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoListParagraph" style="margin-left: 18.05pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
<span style="font-family: Verdana, sans-serif; font-size: x-small;">Dynamic response by java and handle using ajax
jquery for all content types</span><o:p></o:p></div>
<div class="MsoListParagraph" style="margin-left: 18.05pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
<br /></div>
<div class="MsoNormal" style="text-align: left;">
Jquery ajax call<o:p></o:p></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<b><span style="color: #7f0055; font-family: Consolas; font-size: 10.0pt;"> var</span></b><span style="font-family: Consolas; font-size: 10pt;"> url=</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">"trackDynamicResponse.do"</span><span style="font-family: Consolas; font-size: 10pt;">;</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> $.ajax({ </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> url: url,</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> type: </span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">'GET'</span><span style="font-family: Consolas; font-size: 10pt;">,</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> data :{</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> responseType : _responseType</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> },</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> success: </span><b><span style="color: #7f0055; font-family: Consolas; font-size: 10.0pt;">function</span></b><span style="font-family: Consolas; font-size: 10pt;">(response, status,
xhr){ </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> </span><b><span style="color: #7f0055; font-family: Consolas; font-size: 10.0pt;">var</span></b><span style="font-family: Consolas; font-size: 10pt;"> ct = xhr.getResponseHeader(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">"content-type"</span><span style="font-family: Consolas; font-size: 10pt;">) || </span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">""</span><span style="font-family: Consolas; font-size: 10pt;">;</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> </span><b><span style="color: #7f0055; font-family: Consolas; font-size: 10.0pt;">if</span></b><span style="font-family: Consolas; font-size: 10pt;"> (ct.indexOf(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">'html'</span><span style="font-family: Consolas; font-size: 10pt;">) > </span><span style="color: #3f5fbf; font-family: Consolas; font-size: 10.0pt;">-</span><span style="font-family: Consolas; font-size: 10pt;">1) {</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> console.log(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">"html
..."</span><span style="font-family: Consolas; font-size: 10pt;">); </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> }</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> </span><b><span style="color: #7f0055; font-family: Consolas; font-size: 10.0pt;">if</span></b><span style="font-family: Consolas; font-size: 10pt;"> (ct.indexOf(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">'json'</span><span style="font-family: Consolas; font-size: 10pt;">) > </span><span style="color: #3f5fbf; font-family: Consolas; font-size: 10.0pt;">-</span><span style="font-family: Consolas; font-size: 10pt;">1) {</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> console.log(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">"json
..."</span><span style="font-family: Consolas; font-size: 10pt;">); </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> }</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> </span><b><span style="color: #7f0055; font-family: Consolas; font-size: 10.0pt;">if</span></b><span style="font-family: Consolas; font-size: 10pt;"> (ct.indexOf(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">'xml'</span><span style="font-family: Consolas; font-size: 10pt;">) > </span><span style="color: #3f5fbf; font-family: Consolas; font-size: 10.0pt;">-</span><span style="font-family: Consolas; font-size: 10pt;">1) {</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> console.log(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">"xml ..."</span><span style="font-family: Consolas; font-size: 10pt;">); </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> }
</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> console.log(response);</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> $(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">'#responseDiv'</span><span style="font-family: Consolas; font-size: 10pt;">).html(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">"response ::
"</span><span style="font-family: Consolas; font-size: 10pt;">+response.toString());</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> },</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> error :</span><b><span style="color: #7f0055; font-family: Consolas; font-size: 10.0pt;">function</span></b><span style="font-family: Consolas; font-size: 10pt;">( xhr, status, errorThrown ){ </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> alert(</span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">" An error occured: "</span><span style="font-family: Consolas; font-size: 10pt;"> + errorThrown + </span><span style="color: #2a00ff; font-family: Consolas; font-size: 10.0pt;">", Status :
"</span><span style="font-family: Consolas; font-size: 10pt;"> +
status); </span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> console.log(errorThrown);</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> </span><span style="color: #3f7f5f; font-family: Consolas; font-size: 10.0pt;">/*
if(errorThrown.indexOf("XML")>-1){</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="color: #3f7f5f; font-family: Consolas; font-size: 10.0pt;"> $('#responseDiv').html(errorThrown);</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="color: #3f7f5f; font-family: Consolas; font-size: 10.0pt;"> } */</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: left;">
<span style="font-family: Consolas; font-size: 10pt;"> }</span><span style="font-family: Consolas; font-size: 10.0pt;"><o:p></o:p></span></div>
<div class="MsoListParagraph" style="margin-left: 18.05pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
</div>
<div class="MsoNormal" style="text-align: left;">
<span style="font-family: Consolas; font-size: 10pt; line-height: 115%;"> });<o:p></o:p></span><br />
<span style="font-family: Consolas; font-size: 10pt; line-height: 115%;"><br /></span>
<span style="font-family: Consolas; font-size: 10pt; line-height: 115%;">---------------------------------------------------------------------------</span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><b>Servlet :</b></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><b><br /></b></span></span>
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> public String trackDynamicResponse() throws IOException{</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> </span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>String responseType=request.getParameter("responseType");</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> </span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>if(responseType !=null && responseType.equalsIgnoreCase("JSON")){</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>JSONObject json = new JSONObject();</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>JSONArray addresses = new JSONArray();</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>JSONObject address;</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span> int count = 15;</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> for (int i=0 ; i<count ; i++)</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> {</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address = new JSONObject();</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("CustomerName" , "Decepticons" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("AccountId" , "1999" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("SiteId" , "1888" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("Number" , "7" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("Building" , "StarScream Skyscraper" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("Street" , "Devestator Avenue" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("City" , "Megatron City" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("ZipCode" , "ZZ00 XX1" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> address.put("Country" , "CyberTron" + i);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> addresses.add(address);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> }</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span> json.put("Addresses", addresses);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>response.setContentType("application/json");</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>response.getWriter().write(json.toString());</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>}else if(responseType !=null && responseType.equalsIgnoreCase("XML")){</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>response.setContentType("application/xml");</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span> String xml = "";</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> xml = xml + "<response>";</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> xml = xml + " This is XML Response";</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> xml = xml + "</response>";</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>response.getWriter().write(xml);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>}else if(responseType !=null && responseType.equalsIgnoreCase("HTML")){</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span> String html = "<html><body>";</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span> html = html + "This is <b>HTML</b> Response"; </span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span> html = html + "</response>";</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> </span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>response.setContentType("text/html");</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>response.getWriter().write(html);</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>}else{</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>response.getWriter().write("default text Response type");</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>}</span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span><br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"> <span class="Apple-tab-span" style="white-space: pre;"> </span>return null;</span></span><br />
<br />
<span style="font-family: Consolas;"><span style="font-size: 13.3333330154419px; line-height: 15.3333320617676px;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span></span><br />
<div>
<br /></div>
</div>
<div class="MsoListParagraph" style="margin-left: 18.05pt; mso-add-space: auto; mso-list: l0 level1 lfo1; text-indent: -.25in;">
<br /></div>
</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com3tag:blogger.com,1999:blog-4698949581605059910.post-80689073575450109792015-08-28T05:11:00.001-07:002015-08-28T05:11:26.987-07:00Open popup window with post request data in Javascript<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
Open popup window with post request data using javascript:<o:p></o:p></div>
<div class="MsoNormal">
</div>
<div class="MsoNormal">
<span style="color: #274e13;">function
openWindowWithPostRequest() {<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> var winName='MyWindow';<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> var winURL='search.action';<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> var windowoption='resizable=yes,height=600,width=800,location=0,menubar=0,scrollbars=1';<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> var params = { 'param1' : '1','param2'
:'2'}; <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> var form
= document.createElement("form");<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> form.setAttribute("method", "post");<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> form.setAttribute("action", winURL);<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> form.setAttribute("target",winName); <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> for (var
i in params) {<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> if
(params.hasOwnProperty(i)) {<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;">
var input = document.createElement('input');<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> input.type = 'hidden';<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;">
input.name = i;<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;">
input.value = params[i];<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;">
form.appendChild(input);<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> }<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> }
<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> document.body.appendChild(form); <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> window.open('', winName,windowoption);<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> form.target = winName;<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> form.submit(); <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> document.body.removeChild(form); <o:p></o:p></span></div>
<div class="MsoNormal">
<span style="color: #274e13;"> }</span><o:p></o:p></div>
<div class="MsoNormal">
</div>
</div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-23366413748058163382014-12-16T09:51:00.000-08:002014-12-16T09:51:30.216-08:00Generate Random file name in Java<div dir="ltr" style="text-align: left;" trbidi="on">
You can create a random string for a file name using following code snippet.<br />
<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">public static String getRandomString(String fileName) {</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>char fileNameArray[] = fileName.toCharArray();</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>int fileNameLen = fileNameArray.length;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>int c = 'A';</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>int r1 = 0, z=0;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>StringBuilder pw = new StringBuilder("");</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>for (int j = 0; j < 25; j++) {</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>r1 = (int) (Math.random() * 4);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>switch (r1) {</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>case 0:</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>c = '0' + (int) (Math.random() * 9);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>if (c>'9'){</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>z = reset(z,fileNameLen);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>c = fileNameArray[z];</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>break;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>case 1:</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>c = 'a' + (int) (Math.random() * 25);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>if (c<'a' && c>'z'){</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>z = reset(z,fileNameLen);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>c = fileNameArray[z];</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>break;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>case 2:</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>c = 'A' + (int) (Math.random() * 25);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>if (c<'A' && c>'Z'){</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>z = reset(z,fileNameLen);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>c = fileNameArray[z];</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>break;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>pw.append((char) c);</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>fileNameArray = null;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>String s="";</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>try{</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>s =fileName.substring(fileName.lastIndexOf(".")); </span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>if (s.equalsIgnoreCase(".tmp")){</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>s=".jpg";</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}catch(ArrayIndexOutOfBoundsException arrayExp){</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>s="";</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>return new String(pw+s.trim());</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span class="Apple-tab-span" style="white-space: pre;"><span style="color: #274e13;"> </span></span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>private static int reset(int z, int len){</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>if (z>=len){</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>z=0;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>return z;</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>}</span></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-19473482496752982382014-12-10T09:26:00.000-08:002014-12-10T09:26:43.815-08:00Tomcat 7: Set context path for your application in tomcat 7<div dir="ltr" style="text-align: left;" trbidi="on">
Set context path for your application in tomcat 7<br />
<br />
If you want to change context path for your application, you can do by changing<br />
<b>{catalina_base}/conf/server.xml</b> file.<br />
Suppose, you have deployed your application in tomcat 7,<br />
http://localhost:8080/MyApp<br />
You want to set context path to newMyApp,<br />
Modify, host element in <b>server.xml</b> under <b>tomcat/conf</b><br />
<br />
<span style="color: #274e13;"><Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="false"></span><br />
<span style="color: #274e13;">....</span><br />
... .<br />
<b><span style="color: #274e13;"><Context path="/ newMyApp " docBase="/ MyApp " reloadable="true"></span></b><br />
<b><span style="color: #274e13;"> </Context></span></b><br />
<br />
… <br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;"> </Host></span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;">For detailed information, visit <a href="http://tomcat.apache.org/tomcat-7.0-doc/deployer-howto.html#A_word_on_Contexts">http://tomcat.apache.org/tomcat-7.0-doc/deployer-howto.html#A_word_on_Contexts</a></span></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-45557385911313684412014-12-10T09:21:00.001-08:002014-12-10T09:21:47.199-08:00Maven :: Include servlet-api only at local maven install not during building war<div dir="ltr" style="text-align: left;" trbidi="on">
Include servlet-api only at local maven install not during building war<br />
Add scope element with value as ‘Provided’. Now maven will not include this jar in lib whiling<br />
<br />
building war file so that you can deploy it on tomcat.<br />
<br />
<dependency><br />
<groupId>javax.servlet</groupId><br />
<artifactId>servlet-api</artifactId><br />
<version>2.5</version><br />
<b><scope>provided</scope></b><br />
</dependency><br />
<br />
For all scopes in maven, please visit<a href="http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope"> http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope</a></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-65344065823200748502014-12-10T09:18:00.004-08:002014-12-10T09:18:21.312-08:00JAXB:GlobalBinding :: cvc-complex-type.2.4.b: The content of element 'jaxb:globalBindings' is not complete<div dir="ltr" style="text-align: left;" trbidi="on">
Error ::<br />
<span style="color: red;"> cvc-complex-type.2.4.b: The content of element 'jaxb:globalBindings' is not complete. One of '{"http://</span><br />
<span style="color: red;"><br /></span>
<span style="color: red;"> java.sun.com/xml/ns/jaxb":javaType, "http://java.sun.com/xml/ns/jaxb":serializable, WC[##other:"http://</span><br />
<span style="color: red;"><br /></span>
<span style="color: red;"> java.sun.com/xml/ns/jaxb"]}' is expected.</span><br />
<br />
<br />
<b>Solution :</b><br />
<br />
Check <jaxb:globalBindings> tag in your bindings.xml, you may be missing some required tag (If you are using latest eclipse like eclipse-Luna or latest).<br />
Add this tag if missing,<br />
<br />
<span style="color: blue;"><jaxb:globalBindings></span><br />
<span style="color: blue;"> <jaxb:javaType name="java.util.Calendar" xmlType="xs:dateTime" </span><br />
<span style="color: blue;">parseMethod="javax.xml.bind.DatatypeConverter.parseDateTime" </span><br />
<span style="color: blue;">printMethod="javax.xml.bind.DatatypeConverter.printDateTime" /></span><br />
<span style="color: blue;"> </span><span style="color: #274e13;"> <b> <xjc:noValidator /></b></span><br />
<span style="color: blue;"><br /></span>
<span style="color: blue;"> </jaxb:globalBindings> </span></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0tag:blogger.com,1999:blog-4698949581605059910.post-26466610474048760172014-10-09T02:06:00.003-07:002014-10-09T02:06:34.597-07:00How to match date filed in Google Datastore<div dir="ltr" style="text-align: left;" trbidi="on">
How to match date filed in Google Datastore<br />
<br />
Suppose you have an 'Employee' entity with updatedOn field (Date or timestamp type). You can use Date function to parse date string and filter your data.<br />
<br />
<span style="color: #274e13;">In GQL, you can use:</span><br />
<span style="color: #274e13;"> SELECT * FROM EmployeeObj where updatedOn > <b>Date</b>('2014-09-25')</span><br />
<span style="color: #274e13;"><br /></span>
<span style="color: #274e13;">Similarly in objectify, you can use filter</span><br />
<span style="color: #274e13;"> Objectify obfy = OfyService.ofy();</span><br />
<span style="color: #274e13;"> List<EmployeeObj> resultList = obfy.load().type(EmployeeObj.class)</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>.filter("updatedOn > ", Date('2014-09-25'))</span><br />
<span style="color: #274e13;"> <span class="Apple-tab-span" style="white-space: pre;"> </span> .list();</span></div>
Anonymoushttp://www.blogger.com/profile/01621020553644012372noreply@blogger.com0