picturedetailattributetag.java
来自「一个免费wap站」· Java 代码 · 共 79 行
JAVA
79 行
package com.eline.wap.catalog.taglib.wml;
import java.io.File;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
import com.eline.wap.catalog.model.SingleItem;
import com.eline.wap.cmi.model.MobileCapability;
import com.eline.wap.common.util.AppLogger;
public class PictureDetailAttributeTag extends TagSupport {
/**
*
*/
private static final long serialVersionUID = 3633932382324324517L;
private PictureDetailTag parentTag = null;
protected String name = null;
public int doStartTag() throws JspException {
// 检查是否处于ListTag中
parentTag = (PictureDetailTag) findAncestorWithClass(this, PictureDetailTag.class);
if (parentTag == null)
throw new JspTagException("PictureDetailAttributeTag: itemsAttribute tag not inside in PictureDetailTag");
// print out attribute
try {
JspWriter out = pageContext.getOut();
out.print(createText());
} catch(IOException e) {
AppLogger.error("PictureDetailAttributeTag: Error printing attribute: " + e);
}
// there should be no body to process
return SKIP_BODY;
}
/*public int doEndTag() throws JspException {
// TODO Auto-generated method stub
return super.doEndTag();
}*/
public void setName(String name) {
this.name = name;
}
protected String createText() {
SingleItem singleItem = (SingleItem) parentTag.getItem();
if (name.equalsIgnoreCase("title")) {
return singleItem.getName();
} else if (name.equalsIgnoreCase("id")) {
return String.valueOf(singleItem.getIndexId());
} else if (name.equalsIgnoreCase("downloadUrl")) {
return parentTag.getDownloadPictureURL();
} else if (name.equalsIgnoreCase("previewUrl")) {
return parentTag.getPreviewPictureURL();
} else if (name.equalsIgnoreCase("attributeStr")) {
MobileCapability capability = parentTag.getMobileCapability();
return capability.getScreenPixelsWidth() + "x" + capability.getScreenPixelsHeight() + "/" + capability.getPreferredImageMime();
} else if (name.equalsIgnoreCase("fileSize")) {
try {
String physicalPath = pageContext.getServletContext().getRealPath(parentTag.getDownloadPictureURL());
long fileSize = new File(physicalPath).length();
return String.valueOf(fileSize);
} catch (Exception e) {
return "-1";
}
}
return "UNDEFINED";
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?