June 30, 2004
June 25, 2004
June 24, 2004
June 23, 2004
June 22, 2004
June 16, 2004
June 14, 2004
JCA Links
http://jboss.org/index.html?module=bb&op=viewforum&f=136 http://www.onjava.com/pub/a/onjava/2004/03/24/j2eeca.html https://www6.software.ibm.com/developerworks/education/j-jca/j-jca-ltr.pdf OR https://www6.software.ibm.com/developerworks/education/j-jca/index.html?x=71&y=11 http://www.java201.com/resources/redirect/1625.html http://jboss.org/index.html?module=bb&op=viewtopic&t=19732 http://jboss.org/index.html?module=bb&op=viewtopic&t=46930JBoss Performance Links
http://dev.simblogg.is/archives/cat_jboss.html http://jboss.org/index.html?module=bb&op=viewforum&f=121&topicDays=0&start=0 http://linuxintegrators.com/jbossBlog/bburke/?permalink=Optimizing+JBoss%3A+Experiences+with+SPECj2002.html http://www.javablogs.com/ViewEntry.jspa?id=88770 http://www.myj2ee.com/Members/Firedragon/jbosstuningJune 03, 2004
// Slashdot Your Printer
// Sends an rss feed to the lcd on your printer
package com.mike; import java.net.*; import java.io.*; import java.util.*; /** * */ public class PrinterNews { static String rss=/*"http://slashdot.org/index.rss";//*/"http://rss.news.yahoo.com/rss/topstories"; static String printer=""; static int updateFrequency=30*1000*60; static int scrollDelay=300;//ms static String msg=""; static String blank=" "; static OutputStream out; static ArrayList headlines; static boolean nice=true;//otherwise, it locks the printer public static void main(String[] args){ try{ if(!init(args)) return; readHeadlines(); connect(); long startTime=new Date().getTime(); while(true){ scroll(); if(new Date().getTime()-startTime>updateFrequency){ readHeadlines(); startTime=new Date().getTime(); } } }catch(Exception e){ e.printStackTrace(); } } public static boolean init(String[] args){ if(args.length < 2){ usage(); return false; } for(int i=0; i<args.length; i=i+2){ System.out.println("param "+i+" ="+args[i]); String parm=args[i]; if(!parm.startsWith("-") || parm.length()!=2){ usage(); return false; } switch(parm.charAt(1)){ case 'p': printer=args[i+1]; System.out.println("set printer to "+printer); break; case 'u': rss=args[i+1]; System.out.println("set rss to "+rss); break; case 'f': try{ updateFrequency=Integer.parseInt(args[i+1])*1000*60; System.out.println("set frequency to "+updateFrequency); }catch(Exception e){ usage(); return false; } case 'd': try{ scrollDelay=Integer.parseInt(args[i+1]); System.out.println("set delay to "+scrollDelay); break; }catch(Exception e){ usage(); return false; } default: usage(); return false; } } return true; } public static void usage(){ System.out.println("\nUsage:\n"); System.out.println("java com.mike.PrinterNews -p printer"); System.out.println(" [-u rss_url] url of rss feed"); System.out.println(" [-f rssUpdateFrequency] minutes between rss refresh"); System.out.println(" [-d scrollDelayMS] ms between lcd update"); System.out.println("defaults to -u http://rss.news.yahoo.com/rss/topstories -f 30 -d 300"); System.out.println("NOTE: slashdot will blacklist you for -f<30 !\n"); } public static void connect() throws Exception{ Socket s = new Socket(printer, 9100); out =s.getOutputStream(); } public static void scroll() throws Exception{ for(Iterator it=headlines.iterator(); it.hasNext();){ sendMsg((String)(it.next())); if(nice){ out.flush(); out.close(); Thread.sleep(1000); connect(); } } } public static void sendMsg(String msg) throws Exception{ msg=blank+msg+blank; //OPMSG, RDYMSG, STMSG for(int i=0; i<msg.length(); i++){ byte[] b; if(msg.length()> i +15){ b=msg.substring(i, i+15).getBytes(); }else{ b=msg.substring(i).getBytes(); } out.write("\033%-12345X@PJL RDYMSG DISPLAY = \"".getBytes()); out.write(b); out.write("\"\r\n\033%-12345X\r\n".getBytes()); Thread.sleep(scrollDelay); } } public static void readHeadlines() throws Exception{ headlines= new ArrayList(); BufferedReader i = new BufferedReader(new InputStreamReader(new URL(rss).openStream())); while(true){ String nextLine=i.readLine(); if(nextLine==null) break; int start=nextLine.toLowerCase().indexOf("<description>");//<title> if(start!=-1) headlines.add(scrub(nextLine.substring(start+13, nextLine.indexOf("</")>start+13?nextLine.indexOf("</"):nextLine.length()))); //+7 } } private static String scrub(String s) throws Exception{ int start=s.indexOf("&"); int end=s.indexOf(";",start>0?start:0); if(start!= -1 && end != -1) return scrub(s.substring(0, start) +s.substring(end+1)); else return s; } }
Subscribe to:
Posts (Atom)