<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1259268147745802894</id><updated>2011-11-18T03:10:06.149-05:00</updated><category term='watir ruby test'/><title type='text'>Tech Info</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-723113247857057296</id><published>2010-07-09T13:33:00.000-04:00</published><updated>2010-07-09T13:33:25.694-04:00</updated><title type='text'>Finding blocked sessions in oracle</title><content type='html'>select s1.username || '@' || s1.machine&lt;br /&gt;|| ' ( SID=' || s1.sid || ' ) is blocking '&lt;br /&gt;|| s2.username || '@' || s2.machine || ' ( SID=' || s2.sid || ' ) ' AS blocking_status&lt;br /&gt;from v$lock l1, v$session s1, v$lock l2, v$session s2&lt;br /&gt;where s1.sid=l1.sid and s2.sid=l2.sid&lt;br /&gt;and l1.BLOCK=1 and l2.request &gt; 0&lt;br /&gt;and l1.id1 = l2.id1&lt;br /&gt;and l2.id2 = l2.id2 ;&lt;br /&gt;&lt;br /&gt;select SID||','||SERIAL# from v$session where sid = 20&lt;br /&gt;&lt;br /&gt;alter system kill session '20,35205'&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-723113247857057296?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/723113247857057296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=723113247857057296' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/723113247857057296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/723113247857057296'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2010/07/finding-blocked-sessions-in-oracle.html' title='Finding blocked sessions in oracle'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-5247713482596572172</id><published>2010-04-19T13:25:00.012-04:00</published><updated>2011-02-18T17:05:22.071-05:00</updated><title type='text'>Icefaces custom slider component</title><content type='html'>&lt;a href="http://www.icefaces.org/main/home/"&gt;Icefaces&lt;/a&gt; open source edition does not come with a Slider UI component. I've created a custom component that is based on scriptaculous (&lt;a href="http://wiki.github.com/madrobby/scriptaculous/slider"&gt;http://wiki.github.com/madrobby/scriptaculous/slider&lt;/a&gt;) javascript widget. This currently supports onChange event and also background images for the track of the slider. This could be easily modified to support any style you would want through css. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;SlideEvent.java class&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="brush: java"&gt;package com.hasika;&lt;br /&gt;&lt;br /&gt;import javax.faces.component.*;&lt;br /&gt;&lt;br /&gt;public class SlideEvent extends FacesEvent {&lt;br /&gt;&lt;br /&gt;    private static final long serialVersionUID = 1L;&lt;br /&gt;    private int sliderNewValue;&lt;br /&gt;    private int sliderOldValue;&lt;br /&gt;    &lt;br /&gt;    public SlideEvent(UIComponent component, int sliderNewValue) {&lt;br /&gt;        super(component);&lt;br /&gt;        setPhaseId(PhaseId.APPLY_REQUEST_VALUES);&lt;br /&gt;        this.sliderNewValue = sliderNewValue;&lt;br /&gt;    }&lt;br /&gt;         &lt;br /&gt;    public int getSliderNewValue() {&lt;br /&gt;        return sliderNewValue;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setSliderNewValue(int sliderNewValue) {&lt;br /&gt;        this.sliderNewValue = sliderNewValue;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public int getSliderOldValue() {&lt;br /&gt;        return sliderOldValue;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setSliderOldValue(int sliderOldValue) {&lt;br /&gt;        this.sliderOldValue = sliderOldValue;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    @Override&lt;br /&gt;    public boolean isAppropriateListener(FacesListener arg0) {&lt;br /&gt;        return false;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    @Override&lt;br /&gt;    public void processListener(FacesListener arg0) {&lt;br /&gt;        &lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;Slider.java class&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="brush: java"&gt;package com.hasika;&lt;br /&gt;import javax.el.*;&lt;br /&gt;import javax.faces.component.html.*;&lt;br /&gt;import javax.faces.context.*;&lt;br /&gt;import javax.faces.event.*;&lt;br /&gt;&lt;br /&gt;import com.icesoft.faces.context.effects.*;&lt;br /&gt;&lt;br /&gt;public class Slider extends HtmlPanelGroup {&lt;br /&gt;    &lt;br /&gt;    public static final String RENDERER_TYPE = "com.hasika.Slider";&lt;br /&gt;    public static final String COMPONENT_FAMILY = "com.hasika.Slider";&lt;br /&gt;    &lt;br /&gt;    private MethodExpression slideListener;&lt;br /&gt;    private Boolean slider;&lt;br /&gt;    private String axis;&lt;br /&gt;    private String trackStyleClass;&lt;br /&gt;    private String needleStyleClass;&lt;br /&gt;    private Integer sliderValue;&lt;br /&gt;    private String range;&lt;br /&gt;    private String needleValues;&lt;br /&gt;    private String handleImage;&lt;br /&gt;    private String imageDir;&lt;br /&gt;    private String trackImages;&lt;br /&gt;    private Boolean partialSubmit;&lt;br /&gt;    private Integer increment;&lt;br /&gt;    private Integer minimum;&lt;br /&gt;    private Integer maximum;&lt;br /&gt;    &lt;br /&gt;    public Slider() {&lt;br /&gt;        super();&lt;br /&gt;        setRendererType(RENDERER_TYPE);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public String getFamily() {&lt;br /&gt;        return COMPONENT_FAMILY;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void processDecodes(javax.faces.context.FacesContext context) {       &lt;br /&gt;          decode(context);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    public Object saveState(FacesContext context) {&lt;br /&gt;        Object values[] = new Object[16];&lt;br /&gt;        values[0] = super.saveState(context);&lt;br /&gt;        values[1] = saveAttachedState(context, slideListener);&lt;br /&gt;        values[2] = slider;&lt;br /&gt;        values[3] = axis;&lt;br /&gt;        values[4] = sliderValue;&lt;br /&gt;        values[5] = range;&lt;br /&gt;        values[6] = needleValues;&lt;br /&gt;        values[7] = handleImage;&lt;br /&gt;        values[8] = increment;&lt;br /&gt;        values[9] = minimum;&lt;br /&gt;        values[10] = maximum;&lt;br /&gt;        values[11] = trackStyleClass;&lt;br /&gt;        values[12] = needleStyleClass;&lt;br /&gt;        values[13] = imageDir;&lt;br /&gt;        values[14] = trackImages;&lt;br /&gt;        values[15] = partialSubmit;&lt;br /&gt;        &lt;br /&gt;        return values;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    public void restoreState(FacesContext context, Object state) {&lt;br /&gt;        Object values[] = (Object[]) state;&lt;br /&gt;        super.restoreState(context, values[0]);&lt;br /&gt;        slideListener = (MethodExpression)restoreAttachedState(context, values[1]);&lt;br /&gt;        slider = (Boolean) values[2];&lt;br /&gt;        axis = (String) values[3];&lt;br /&gt;        sliderValue = (Integer) values[4];&lt;br /&gt;        range = (String) values[5];&lt;br /&gt;        needleValues = (String) values[6];&lt;br /&gt;        handleImage = (String) values[7];&lt;br /&gt;        increment = (Integer) values[8];&lt;br /&gt;        minimum = (Integer) values[9];&lt;br /&gt;        maximum = (Integer) values[10];&lt;br /&gt;        trackStyleClass = (String) values[11];&lt;br /&gt;        needleStyleClass = (String) values[12];&lt;br /&gt;        imageDir = (String) values[13];&lt;br /&gt;        trackImages = (String) values[14];&lt;br /&gt;        partialSubmit = (Boolean) values[15];&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    public void broadcast(FacesEvent event) throws AbortProcessingException {&lt;br /&gt;        super.broadcast(event);&lt;br /&gt;&lt;br /&gt;        if (event instanceof SlideEvent &amp;&amp; slideListener != null) {&lt;br /&gt;            Object[] oa = {(SlideEvent) event};&lt;br /&gt;            slideListener.invoke(getFacesContext().getELContext(), oa);&lt;br /&gt;        }&lt;br /&gt;       &lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    @Override&lt;br /&gt;    public void queueEvent(FacesEvent event) {&lt;br /&gt;        if (event instanceof SlideEvent) {&lt;br /&gt;            event.setPhaseId(PhaseId.UPDATE_MODEL_VALUES);&lt;br /&gt;        }&lt;br /&gt;        super.queueEvent(event);&lt;br /&gt;    }&lt;br /&gt;        &lt;br /&gt;    public MethodExpression getSlideListener() {        &lt;br /&gt;        return slideListener;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setSlideListener(MethodExpression slideListener) {&lt;br /&gt;        this.slideListener = slideListener;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public boolean isSlider() {&lt;br /&gt;        if (slider != null)&lt;br /&gt;            return slider.booleanValue();&lt;br /&gt;&lt;br /&gt;        ValueExpression ve = this.getValueExpression("slider");&lt;br /&gt;        &lt;br /&gt;        if(ve != null){&lt;br /&gt;            Boolean value = (Boolean)ve.getValue(this.getFacesContext().getELContext());&lt;br /&gt;            return (value.booleanValue());&lt;br /&gt;        } else {&lt;br /&gt;            return false;&lt;br /&gt;        }          &lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setSlider(boolean slider) {&lt;br /&gt;        this.slider = Boolean.valueOf(slider);&lt;br /&gt;        JavascriptContext.includeLib(JavascriptContext.ICE_EXTRAS, getFacesContext());&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getAxis() {&lt;br /&gt;        return axis;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setAxis(String axis) {&lt;br /&gt;        this.axis = axis;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getTrackStyleClass() {&lt;br /&gt;        return trackStyleClass;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setTrackStyleClass(String trackStyleClass) {&lt;br /&gt;        this.trackStyleClass = trackStyleClass;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getNeedleStyleClass() {&lt;br /&gt;        return needleStyleClass;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setNeedleStyleClass(String needleStyleClass) {&lt;br /&gt;        this.needleStyleClass = needleStyleClass;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public int getSliderValue() {&lt;br /&gt;        if(sliderValue != null){&lt;br /&gt;            return sliderValue.intValue();&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        ValueExpression ve = this.getValueExpression("sliderValue");&lt;br /&gt;        &lt;br /&gt;        if(ve != null){&lt;br /&gt;            Integer value = (Integer)ve.getValue(this.getFacesContext().getELContext());&lt;br /&gt;            return (value.intValue());&lt;br /&gt;        } else {&lt;br /&gt;            return -1;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setSliderValue(int sliderValue) {&lt;br /&gt;        this.sliderValue = new Integer(sliderValue);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getRange() {&lt;br /&gt;        if(range != null) {&lt;br /&gt;            return range;&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        ValueExpression ve = this.getValueExpression("range");&lt;br /&gt;        return ve != null ? (String) ve.getValue(getFacesContext().getELContext()) : null;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setRange(String range) {&lt;br /&gt;        this.range = range;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getNeedleValues() {&lt;br /&gt;        if(needleValues != null) {&lt;br /&gt;            return needleValues;&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        ValueExpression ve = this.getValueExpression("needle");&lt;br /&gt;        return ve != null ? (String) ve.getValue(getFacesContext().getELContext()) : null;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setNeedleValues(String needleValues) {&lt;br /&gt;        this.needleValues = needleValues;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getHandleImage() {&lt;br /&gt;        if(handleImage != null) {&lt;br /&gt;            return handleImage;&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        ValueExpression ve = this.getValueExpression("handleImage");&lt;br /&gt;        return ve != null ? (String) ve.getValue(getFacesContext().getELContext()) : null;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setHandleImage(String handleImage) {&lt;br /&gt;        this.handleImage = handleImage;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getImageDir() {&lt;br /&gt;        if(imageDir != null) {&lt;br /&gt;            return imageDir;&lt;br /&gt;        }&lt;br /&gt;        ValueExpression ve = this.getValueExpression("imageDir");&lt;br /&gt;        return ve != null ? (String) ve.getValue(getFacesContext().getELContext()) : null;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setImageDir(String imageDir) {&lt;br /&gt;        this.imageDir = imageDir;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public String getTrackImages() {&lt;br /&gt;        if(trackImages != null) {&lt;br /&gt;            return trackImages;&lt;br /&gt;        }&lt;br /&gt;        ValueExpression ve = this.getValueExpression("trackImages");&lt;br /&gt;        return ve != null ? (String) ve.getValue(getFacesContext().getELContext()) : null;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public boolean isPartialSubmit() {&lt;br /&gt;        if (partialSubmit != null)&lt;br /&gt;            return partialSubmit.booleanValue();&lt;br /&gt;&lt;br /&gt;        ValueExpression ve = this.getValueExpression("partialSubmit");&lt;br /&gt;        &lt;br /&gt;        if(ve != null){&lt;br /&gt;            Boolean value = (Boolean)ve.getValue(this.getFacesContext().getELContext());&lt;br /&gt;            return (value.booleanValue());&lt;br /&gt;        } else {&lt;br /&gt;            return false;&lt;br /&gt;        }   &lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setPartialSubmit(boolean partialSubmit) {&lt;br /&gt;        this.partialSubmit = Boolean.valueOf(partialSubmit);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setTrackImages(String trackImages) {&lt;br /&gt;        this.trackImages = trackImages;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public int getIncrement() {&lt;br /&gt;        if(increment != null){&lt;br /&gt;            return increment.intValue();&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        ValueExpression ve = this.getValueExpression("increment");&lt;br /&gt;        &lt;br /&gt;        if(ve != null){&lt;br /&gt;            Integer value = (Integer)ve.getValue(this.getFacesContext().getELContext());&lt;br /&gt;            return (value.intValue());&lt;br /&gt;        } else {&lt;br /&gt;            return -1;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setIncrement(int increment) {&lt;br /&gt;        this.increment = new Integer(increment);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public int getMinimum() {&lt;br /&gt;        if(minimum != null){&lt;br /&gt;            return minimum.intValue();&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        ValueExpression ve = this.getValueExpression("minimum");&lt;br /&gt;        &lt;br /&gt;        if(ve != null){&lt;br /&gt;            Integer value = (Integer)ve.getValue(this.getFacesContext().getELContext());&lt;br /&gt;            return (value.intValue());&lt;br /&gt;        } else {&lt;br /&gt;            return -1;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setMinimum(int minimum) {&lt;br /&gt;        this.minimum = new Integer(minimum);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public int getMaximum() {&lt;br /&gt;        if(maximum != null){&lt;br /&gt;            return maximum.intValue();&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        ValueExpression ve = this.getValueExpression("maximum");&lt;br /&gt;        &lt;br /&gt;        if(ve != null){&lt;br /&gt;            Integer value = (Integer)ve.getValue(this.getFacesContext().getELContext());&lt;br /&gt;            return (value.intValue());&lt;br /&gt;        } else {&lt;br /&gt;            return -1;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void setMaximum(int maximum) {&lt;br /&gt;        this.maximum = new Integer(maximum);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;SliderHandler.java class&lt;/b&gt;&lt;br /&gt;&lt;pre class="brush: java"&gt;package com.hasika;&lt;br /&gt;import com.sun.facelets.tag.*;&lt;br /&gt;&lt;br /&gt;public class SliderHandler extends ComponentHandler {&lt;br /&gt;&lt;br /&gt;    public SliderHandler(ComponentConfig config) {&lt;br /&gt;        super(config);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    protected MetaRuleset createMetaRuleset(Class type) {&lt;br /&gt;        MetaRuleset m = super.createMetaRuleset(type);&lt;br /&gt;        if( tag.getNamespace() != null &amp;&amp; tag.getNamespace().equals("http://hasika.com/facelets")) {&lt;br /&gt;            if( tag.getLocalName().equals("slider") ) {&lt;br /&gt;                m.addRule( new MethodRule("slideListener", null, new Class[] {SlideEvent.class}) );&lt;br /&gt;            }            &lt;br /&gt;        }&lt;br /&gt;        return m;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;SliderRenderer.java class&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="brush: java"&gt;package com.hasika;&lt;br /&gt;&lt;br /&gt;import java.io.*;&lt;br /&gt;import java.util.*;&lt;br /&gt;&lt;br /&gt;import javax.el.*;&lt;br /&gt;import javax.faces.component.*;&lt;br /&gt;import javax.faces.context.*;&lt;br /&gt;&lt;br /&gt;import org.w3c.dom.*;&lt;br /&gt;&lt;br /&gt;import com.icesoft.faces.context.*;&lt;br /&gt;import com.icesoft.faces.context.effects.*;&lt;br /&gt;import com.icesoft.faces.renderkit.dom_html_basic.*;&lt;br /&gt;import com.icesoft.util.pooling.*;&lt;br /&gt;&lt;br /&gt;public class SliderRenderer extends DomBasicRenderer {&lt;br /&gt;    &lt;br /&gt;    //private final static Logger logger = Logger.getLogger();&lt;br /&gt;        &lt;br /&gt;    public void encodeBegin(FacesContext facesContext, UIComponent uiComponent)&lt;br /&gt;    throws IOException {&lt;br /&gt;        try {&lt;br /&gt;           &lt;br /&gt;            String clientId = uiComponent.getClientId(facesContext);&lt;br /&gt;            Slider sliderPanel = (Slider) uiComponent;&lt;br /&gt;            DOMContext domContext = DOMContext.attachDOMContext(facesContext, uiComponent);&lt;br /&gt;           &lt;br /&gt;            if (!domContext.isInitialized()) {&lt;br /&gt;                &lt;br /&gt;                UIComponent form = findForm(uiComponent);&lt;br /&gt;                String formId = form.getClientId(facesContext);&lt;br /&gt;                &lt;br /&gt;                Element rootSpan = domContext.createElement(HTML.DIV_ELEM);&lt;br /&gt;                &lt;br /&gt;                setRootElementId(facesContext, rootSpan, uiComponent);&lt;br /&gt;                domContext.setRootNode(rootSpan);&lt;br /&gt;                &lt;br /&gt;                Element trackDiv = domContext.createElement(HTML.DIV_ELEM);&lt;br /&gt;                trackDiv.setAttribute(HTML.ID_ATTR, ClientIdPool.get(clientId + "track"));&lt;br /&gt;                trackDiv.setAttribute(HTML.CLASS_ATTR, sliderPanel.getTrackStyleClass());&lt;br /&gt;                &lt;br /&gt;                String imageDir = sliderPanel.getImageDir() == null ? "" : sliderPanel.getImageDir();&lt;br /&gt;                &lt;br /&gt;                String [] trackImages = null;&lt;br /&gt;                if(sliderPanel.getTrackImages() != null) {&lt;br /&gt;                    trackImages = sliderPanel.getTrackImages().split(",");&lt;br /&gt;                    if(trackImages != null) {&lt;br /&gt;                        String trackImg = "";&lt;br /&gt;                        try {&lt;br /&gt;                            trackImg = trackImages[sliderPanel.getSliderValue()];&lt;br /&gt;                        } catch (Exception e) {&lt;br /&gt;                            trackImg = trackImages[0];&lt;br /&gt;                        }&lt;br /&gt;                        trackDiv.setAttribute(HTML.STYLE_ATTR, "background-image:url(" + imageDir + "/" + trackImg +");background-repeat:no-repeat;background-position:center;");&lt;br /&gt;                        &lt;br /&gt;                    }&lt;br /&gt;                }&lt;br /&gt;                                &lt;br /&gt;                Element needleDiv = domContext.createElement(HTML.DIV_ELEM);&lt;br /&gt;                needleDiv.setAttribute(HTML.ID_ATTR, ClientIdPool.get(clientId + "needle"));&lt;br /&gt;                needleDiv.setAttribute(HTML.CLASS_ATTR, sliderPanel.getNeedleStyleClass());&lt;br /&gt;                &lt;br /&gt;                if(sliderPanel.getHandleImage() != null) {&lt;br /&gt;                    Element needleImg = domContext.createElement(HTML.IMG_ELEM);&lt;br /&gt;                    needleImg.setAttribute(HTML.SRC_ATTR, imageDir + "/" + sliderPanel.getHandleImage());&lt;br /&gt;                    needleDiv.appendChild(needleImg);&lt;br /&gt;                }&lt;br /&gt;                               &lt;br /&gt;                trackDiv.appendChild(needleDiv);&lt;br /&gt;                                &lt;br /&gt;                rootSpan.appendChild(trackDiv);&lt;br /&gt;                         &lt;br /&gt;                String hiddenId = ClientIdPool.get(formId + "slider_hidden");&lt;br /&gt;               &lt;br /&gt;                Element hiddenField = domContext.createElement(HTML.INPUT_ELEM);&lt;br /&gt;                hiddenField.setAttribute(HTML.NAME_ATTR, hiddenId);&lt;br /&gt;                hiddenField.setAttribute(HTML.ID_ATTR, hiddenId);&lt;br /&gt;                hiddenField.setAttribute(HTML.TYPE_ATTR, "hidden");&lt;br /&gt;                hiddenField.setAttribute(HTML.VALUE_ATTR, "");&lt;br /&gt;&lt;br /&gt;                rootSpan.appendChild(hiddenField);&lt;br /&gt;                                &lt;br /&gt;                String call = addSliderJavascriptCalls(sliderPanel, facesContext, clientId, hiddenId, formId);&lt;br /&gt;                &lt;br /&gt;                if(call != null &amp;&amp; call.length() &gt; 0 ) {&lt;br /&gt;                    Element scriptDiv = domContext.createRootElement(HTML.DIV_ELEM);&lt;br /&gt;                    &lt;br /&gt;                    Element script = domContext.createElement(HTML.SCRIPT_ELEM);&lt;br /&gt;                    script.setAttribute(HTML.TYPE_ATTR, "text/javascript");&lt;br /&gt;                    script.appendChild(domContext.createTextNode(call));&lt;br /&gt;                    scriptDiv.appendChild(script);&lt;br /&gt;                }&lt;br /&gt;                                      &lt;br /&gt;                domContext.stepInto(uiComponent);&lt;br /&gt;    &lt;br /&gt;            }&lt;br /&gt;&lt;br /&gt;        } catch (Exception e) {&lt;br /&gt;            //logger.error("Error rendering slider component", e);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public void encodeEnd(FacesContext facesContext, UIComponent uiComponent) throws IOException {&lt;br /&gt;        validateParameters(facesContext, uiComponent, null);&lt;br /&gt;        DOMContext domContext = DOMContext.getDOMContext(facesContext, uiComponent);&lt;br /&gt;        domContext.stepOver();&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public void decode(FacesContext context, UIComponent component) {&lt;br /&gt;        super.decode(context, component);&lt;br /&gt;        &lt;br /&gt;        if (component instanceof Slider) {&lt;br /&gt;            Slider slider = (Slider) component;&lt;br /&gt;            &lt;br /&gt;            Map&lt;String,String&gt; requestMap = context.getExternalContext().getRequestParameterMap();&lt;br /&gt;           &lt;br /&gt;            UIComponent form = findForm(component);&lt;br /&gt;            String formId = form.getClientId(context);&lt;br /&gt;            String hdnFld = ClientIdPool.get(formId+ "slider_hidden");&lt;br /&gt;            if (!requestMap.containsKey(hdnFld) || requestMap.get(hdnFld).toString().equals("")) {&lt;br /&gt;                return;&lt;br /&gt;            }&lt;br /&gt;            &lt;br /&gt;            String value = String.valueOf(requestMap.get(hdnFld));&lt;br /&gt;            &lt;br /&gt;            if(value == null || "".equals(value)){&lt;br /&gt;                return;&lt;br /&gt;            }&lt;br /&gt;            &lt;br /&gt;            if(slider.getSlideListener() != null){&lt;br /&gt;                MethodExpression listener = slider.getSlideListener();&lt;br /&gt;                &lt;br /&gt;                if (listener != null) {&lt;br /&gt;                    &lt;br /&gt;                    SlideEvent event = new SlideEvent(component, Integer.valueOf(value));&lt;br /&gt;                    slider.queueEvent(event);&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;            &lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;        &lt;br /&gt;    private String addSliderJavascriptCalls(Slider slider, FacesContext facesContext, String clientId, String hiddenId, String formId) {&lt;br /&gt;               &lt;br /&gt;        EffectsArguments ea = new EffectsArguments();&lt;br /&gt;        ea.add("axis", slider.getAxis());&lt;br /&gt;        &lt;br /&gt;        if(slider.getSliderValue() &gt;= 0) {&lt;br /&gt;            ea.add("sliderValue", slider.getSliderValue());&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        if(slider.getMinimum() &gt;= 0) {&lt;br /&gt;            ea.add("minimum", slider.getMinimum());&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        if(slider.getMaximum() &gt;= 0) {&lt;br /&gt;            ea.add("maximum", slider.getMaximum());&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        if(slider.getIncrement() &gt;= 0) {&lt;br /&gt;            ea.add("increment", slider.getIncrement());&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        if(slider.getRange() != null) {&lt;br /&gt;            ea.addFunction("range", "$R(" + slider.getRange() + ")");&lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;        if(slider.getNeedleValues() != null) {&lt;br /&gt;            ea.addFunction("values", "[" + slider.getNeedleValues() + "]");&lt;br /&gt;        }&lt;br /&gt;         &lt;br /&gt;        String sliderObject = "var slider = new Control.Slider('" + clientId + "needle','" + clientId + "track'" + ea.toString();&lt;br /&gt;                &lt;br /&gt;        StringBuilder onChangeFunction = new StringBuilder(" slider.options.onChange = function(value) {  ");&lt;br /&gt;        onChangeFunction.append(" document.getElementById('"+ hiddenId+"').value = value; ");&lt;br /&gt;        &lt;br /&gt;        if(slider.isPartialSubmit()) {&lt;br /&gt;            onChangeFunction.append(" iceSubmitPartial");&lt;br /&gt;        } else {&lt;br /&gt;            onChangeFunction.append(" iceSubmit");&lt;br /&gt;        }&lt;br /&gt;        onChangeFunction.append(" (document.forms['" + formId + "'], document.getElementById('"+ clientId+"'), Event.MOUSEMOVE);");&lt;br /&gt;        onChangeFunction.append(" }; ");&lt;br /&gt;        &lt;br /&gt;        StringBuilder jsCall = new StringBuilder();&lt;br /&gt;        jsCall.append("jQuery(document).ready(function($) { ");&lt;br /&gt;        jsCall.append(sliderObject);&lt;br /&gt;        jsCall.append(onChangeFunction);&lt;br /&gt;        jsCall.append(" }); ");&lt;br /&gt;        &lt;br /&gt;        if(hasInitiatedSubmit(facesContext, hiddenId)) {&lt;br /&gt;            JavascriptContext.addJavascriptCall(facesContext, new StringBuilder(sliderObject).append(onChangeFunction).toString());&lt;br /&gt;            return "";&lt;br /&gt;        }&lt;br /&gt;                &lt;br /&gt;        return jsCall.toString();&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    public boolean hasInitiatedSubmit(FacesContext context, String hiddenId) {&lt;br /&gt;        Map&lt;String,String&gt; requestMap = context.getExternalContext().getRequestParameterMap();&lt;br /&gt;&lt;br /&gt;        if (requestMap.containsKey(hiddenId) &amp;&amp; !requestMap.get(hiddenId).toString().equals("")) {&lt;br /&gt;            requestMap.remove(hiddenId);&lt;br /&gt;            return true;&lt;br /&gt;        }&lt;br /&gt;        return false;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;SliderBean.java class&lt;/b&gt;&lt;br /&gt;&lt;pre class="brush: java"&gt;public class SliderBean {&lt;br /&gt; &lt;br /&gt; private int sliderValue = 0;&lt;br /&gt; &lt;br /&gt; public void slideValueListener(SlideEvent event) { &lt;br /&gt;  sliderValue = event.getSliderNewValue();&lt;br /&gt;  &lt;br /&gt;  // do &lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public int getSliderValue() {&lt;br /&gt;  return sliderValue;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;In your facelets.taglib.xml file tag definition should be added&lt;br /&gt;&lt;pre class="brush: xml"&gt;&lt;tag&gt;&lt;br /&gt;   &lt;tag-name&gt;slider&lt;/tag-name&gt;&lt;br /&gt;   &lt;component&gt;&lt;br /&gt;     &lt;component-type&gt;com.hasika.Slider&lt;/component-type&gt;&lt;br /&gt;     &lt;renderer-type&gt;com.hasika.Slider&lt;/renderer-type&gt;&lt;br /&gt;     &lt;handler-class&gt;com.hasika.SliderHandler&lt;/handler-class&gt;&lt;br /&gt;   &lt;/component&gt;&lt;br /&gt; &lt;/tag&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;faces-config.xml should include&lt;br /&gt;&lt;pre class="brush: xml"&gt;&lt;component&gt;&lt;br /&gt;     &lt;component-type&gt;com.hasika.Slider&lt;/component-type&gt;&lt;br /&gt;     &lt;component-class&gt;com.hasika.Slider&lt;/component-class&gt;&lt;br /&gt; &lt;/component&gt;&lt;br /&gt;       &lt;br /&gt;    &lt;render-kit&gt;&lt;br /&gt;     &lt;renderer&gt;&lt;br /&gt;      &lt;component-family&gt;com.hasika.Slider&lt;/component-family&gt;&lt;br /&gt;      &lt;renderer-type&gt;com.hasika.Slider&lt;/renderer-type&gt;     &lt;br /&gt;      &lt;renderer-class&gt;com.hasika.SliderRenderer&lt;/renderer-class&gt;&lt;br /&gt;     &lt;/renderer&gt;    &lt;br /&gt;    &lt;/render-kit&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;sample usage in a jspx file&lt;br /&gt;&lt;pre class="brush: php"&gt;&lt;f:view xmlns:f="http://java.sun.com/jsf/core"&lt;br /&gt;        xmlns:p="http://hasika.com/facelets"&lt;br /&gt;        xmlns:ice="http://www.icesoft.com/icefaces/component"&gt;&lt;br /&gt;&lt;style&gt;&lt;br /&gt;track {&lt;br /&gt;    width:225px;&lt;br /&gt;    height:30px;&lt;br /&gt;}&lt;br /&gt;.needle {&lt;br /&gt;    width:9px;height:15px;cursor: col-resize;&lt;br /&gt;}&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;table&gt;&lt;tr&gt; &lt;td&gt;&lt;br /&gt;&lt;br /&gt;&lt;p:slider range="0,5"         needleValues="0,1,2,3,4,5"           trackStyleClass="track" needleStyleClass="needle"       sliderValue="#sliderBean.slideVal}"     handleImage="pointer.png"          imageDir="/images/slider"&lt;br /&gt;trackImages="slider_0.png,slider_1.png,slider_2.png,slider_3.png,slider_4.png,slider_5.png" &lt;br /&gt;slideListener="#{sliderBean.slideValueListener}"/&gt;&lt;/td&gt; &lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-5247713482596572172?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/5247713482596572172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=5247713482596572172' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/5247713482596572172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/5247713482596572172'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2010/04/package-com.html' title='Icefaces custom slider component'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-873120845404605082</id><published>2009-12-27T14:11:00.008-05:00</published><updated>2009-12-28T14:05:12.573-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='watir ruby test'/><title type='text'>Watir - Automation</title><content type='html'>&lt;span style="font-size:85%;"&gt;A few notes when installing watir on Mac OSX (Snow Leopard) + FF(3.5+)&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:webdings;"&gt;Install Watir + ruby (&lt;/span&gt;&lt;a style="font-family: webdings;" href="http://watir.com/installation/#mac"&gt;http://watir.com/installation/#mac&lt;/a&gt;&lt;span style="font-family:webdings;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:webdings;"&gt;The plugin provided on the site didn't work for me, had to install the plugin on &lt;a href="http://www.blogger.com/%28http://wiki.openqa.org/display/WTR/FireWatir+Installation#FireWatirInstallation-InstalltheJSSHFirefoxExtension"&gt;(http://wiki.openqa.org/display/WTR/FireWatir+Installation#FireWatirInstallation-InstalltheJSSHFirefoxExtension&lt;/a&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:webdings;"&gt;After installing the plugin successfully I was getting "RuntimeError: Firefox is running without -jssh" when running a script&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:webdings;"&gt;As a work around, start firefox from the terminal giving the -jssh option&lt;br /&gt;/Applications/Firefox.app/Contents/MacOS/firefox-bin -P testyard -jssh&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:webdings;"&gt;Sample Script&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;pre class="brush: ruby"&gt;&lt;br /&gt;require "watir"&lt;br /&gt;$b = Watir::Browser.new&lt;br /&gt;$b.goto "http://www.example.com"&lt;br /&gt;$b.text_field(:id, 'user').set('test@test.com')&lt;br /&gt;$b.text_field(:id, 'password').set('psw')&lt;br /&gt;$b.button(:value, 'Login').click&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;file=File.open("test.txt")&lt;br /&gt;while(f=file.gets)&lt;br /&gt;    sleep 10&lt;br /&gt;    $b.goto "#{f}"&lt;br /&gt;    $contents = $b.div(:id,'test').text&lt;br /&gt;    puts $contents.split('delimitter')[1].split(' ')[0]&lt;br /&gt;end&lt;br /&gt;file.close&lt;br /&gt;end&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-873120845404605082?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/873120845404605082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=873120845404605082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/873120845404605082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/873120845404605082'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2009/12/watir-automation.html' title='Watir - Automation'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-5885934402293849208</id><published>2009-12-23T16:30:00.003-05:00</published><updated>2009-12-23T16:32:00.745-05:00</updated><title type='text'>liferay developer settings</title><content type='html'>&lt;pre class="brush: java"&gt;&lt;br /&gt;theme.css.fast.load=false&lt;br /&gt;theme.images.fast.load=false&lt;br /&gt;javascript.fast.load=false&lt;br /&gt;javascript.log.enabled=true&lt;br /&gt;layout.template.cache.enabled=false&lt;br /&gt;browser.launcher.url=&lt;br /&gt;last.modified.check=false&lt;br /&gt;openoffice.cache.enabled=false&lt;br /&gt;velocity.engine.resource.manager.cache.enabled=false&lt;br /&gt;com.liferay.portal.servlet.filters.cache.CacheFilter=false&lt;br /&gt;com.liferay.portal.servlet.filters.theme.ThemePreviewFilter=true&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-5885934402293849208?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/5885934402293849208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=5885934402293849208' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/5885934402293849208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/5885934402293849208'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2009/12/liferay-developer-settings.html' title='liferay developer settings'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-4697550838130473369</id><published>2009-08-28T17:02:00.001-04:00</published><updated>2009-08-28T17:04:18.053-04:00</updated><title type='text'>running x app</title><content type='html'>xhost +client_ip&lt;br /&gt;ssh -X client&lt;br /&gt;export DISPLAY="server_ip:port"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-4697550838130473369?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/4697550838130473369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=4697550838130473369' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/4697550838130473369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/4697550838130473369'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2009/08/running-x-app.html' title='running x app'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-7885070450861013440</id><published>2009-08-11T17:26:00.001-04:00</published><updated>2009-08-11T17:28:15.080-04:00</updated><title type='text'>setting xauth cookies</title><content type='html'>xauth list&lt;br /&gt;xauth nlist (from the user you logged to x session)&lt;br /&gt;  copy the text&lt;br /&gt;xauth nmerge -&lt;br /&gt;  paste the text&lt;br /&gt;ctrl + d&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-7885070450861013440?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/7885070450861013440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=7885070450861013440' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/7885070450861013440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/7885070450861013440'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2009/08/setting-xauth-cookies.html' title='setting xauth cookies'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-8282104136748398185</id><published>2009-06-10T13:28:00.006-04:00</published><updated>2009-12-22T23:13:53.534-05:00</updated><title type='text'>restart eth0</title><content type='html'>/sbin/ethtool -s eth0 speed 100 duplex full autoneg off&lt;br /&gt;/sbin/ethtool eth0&lt;br /&gt;/sbin/ifconfig eth0&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-8282104136748398185?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/8282104136748398185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=8282104136748398185' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/8282104136748398185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/8282104136748398185'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2009/06/restart-eth0.html' title='restart eth0'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-3073169890357374963</id><published>2009-05-28T13:14:00.002-04:00</published><updated>2009-05-28T13:21:13.874-04:00</updated><title type='text'>tcpdump when ssh</title><content type='html'>tcpdump host IP and not port 22&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-3073169890357374963?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/3073169890357374963/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=3073169890357374963' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/3073169890357374963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/3073169890357374963'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2009/05/tcpdump-when-ssh.html' title='tcpdump when ssh'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-9072268509506963368</id><published>2007-06-18T11:47:00.000-04:00</published><updated>2007-06-18T11:48:16.451-04:00</updated><title type='text'>previous month yyyymm</title><content type='html'>date +%Y%m -d "-1 month"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-9072268509506963368?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/9072268509506963368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=9072268509506963368' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/9072268509506963368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/9072268509506963368'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2007/06/previous-month-yyyymm.html' title='previous month yyyymm'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1259268147745802894.post-1687939082007547816</id><published>2007-06-13T22:00:00.000-04:00</published><updated>2007-06-13T22:03:04.397-04:00</updated><title type='text'>portable apps</title><content type='html'>Found this cool app for running light weight apps on portable storage devices. &lt;a href="http://portableapps.com/"&gt;http://portableapps.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1259268147745802894-1687939082007547816?l=hasitech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hasitech.blogspot.com/feeds/1687939082007547816/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1259268147745802894&amp;postID=1687939082007547816' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/1687939082007547816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1259268147745802894/posts/default/1687939082007547816'/><link rel='alternate' type='text/html' href='http://hasitech.blogspot.com/2007/06/portable-apps.html' title='portable apps'/><author><name>hasika</name><uri>http://www.blogger.com/profile/04961387511917813567</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
