当前位置:  编程技术>软件工程/软件设计
本页文章导读:
    ▪解决getOutputStream() has already been called for this response       getOutputStream() has already been called for this response异常出现的原因和解决方法: jsp中出现此错误一般都是在jsp中使用了输出流(如输出图片验证码,文件下载等),没有妥善处理好的原因。 具.........
    ▪linux-2.6.32在mini2440开发板上移植(14)之移植I2C-EEPROM 驱动      移植I2C-EEPROM 驱动 编者:略。 1 在内核中配置I2C 驱动          Linux-2.6.32.2 对S2C2440 的I2C 接口提供了完善的驱动,因此我们只需在内核中配置一下即可使用。  &n.........
    ▪Play framework的Markdown模块      Markdown是什么 这个模块基于出色的markdownPapers,它在速度(4倍于最接近的竞争者)和设计上都很出色: ${'**Hello** *world*'.markdown().raw()} ${'./manual.md'.markdown().raw} GET /docs/images/{imageName}\.{ext} Markd.........

[1]解决getOutputStream() has already been called for this response
    来源: 互联网  发布时间: 2013-10-30

getOutputStream() has already been called for this response异常出现的原因和解决方法:

jsp中出现此错误一般都是在jsp中使用了输出流(如输出图片验证码,文件下载等),没有妥善处理好的原因。


具体的原因:jsp编译成servlet之后在函数

_jspService(HttpServletRequest request, HttpServletResponse response)

 

的最后
有一段这样的代码

Java代码  
  • finally {  
  •       if (_jspxFactory != null)   
  •           _jspxFactory.releasePageContext(_jspx_page_context);  
  • }  
  •  

    这里是在释放在jsp中使用的对象,会调用response.getWriter(),因为这个方法是和response.getOutputStream()相冲突的!所以会出现以上这个异常。然后当然是要提出解决的办法,其实挺简单的,在使用完输出流以后调用以下两行代码即可:

    Java代码  
  • out.clear();  
  • out = pageContext.pushBody();  
  •  


    同时要注意返回值的问题,返回null 

    最后这里是一个输出彩色验证码例子(这样的例子几乎随处可见)。

    Java代码  
  • <%@ page  import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>  
  • <%@ page import="java.io.OutputStream" %>  
  • <%!  
  • Color getRandColor(int fc,int bc){  
  • Random random = new Random();  
  • if(fc>255) fc=
        
  • [2]linux-2.6.32在mini2440开发板上移植(14)之移植I2C-EEPROM 驱动
        来源: 互联网  发布时间: 2013-10-30

    移植I2C-EEPROM 驱动

    编者:略。

    1 在内核中配置I2C 驱动
             Linux-2.6.32.2 对S2C2440 的I2C 接口提供了完善的驱动,因此我们只需在内核中配置一下即可使用。
             在内核源代码目录执行:make menuconfig,进入内核配置主菜单,依次选择进入如下子菜单:
             Device Drivers --->
                  <*> I2C support --->
                  I2C Hardware Bus support --->
    如图,我们看到这里已经选择好了“<*> S3C2410 I2C Driver”,这里的S3C2410 也可以适用于S3C2440,因为它们的I2C 端口及寄存器定义都是完全相同的。

    以上配置所对应的驱动源代码为:linux-2.6.32.2/drivers/i2c/busses/i2c-s3c2410.c

     

    2 测试I2C-EEPROM

          Mini2440 为了方便用户测试,基于I2C 总线挂接了一个EEPROM 芯片,它是AT24C08,通过写入和读取该芯片,我们就可以测试I2C 总线驱动了。在内核根目录下执行:make zImage,把生成的新内核烧写到开发板中,依然使用友善之臂提供的root_qtopoia,因为里面已经包含了I2C-EEPROM测试程序

    在命令行种输入:i2c –w 可以向板子的24C08 器件中写入数据(0x00-0xff)

    在命令行中输入:i2c –r 可以从板子的24C08 器件中读出输出

    作者:ssdsafsdsd 发表于2013-4-7 15:52:33 原文链接
    阅读:27 评论:0 查看评论

        
    [3]Play framework的Markdown模块
        来源: 互联网  发布时间: 2013-10-30
    Markdown是什么

    Markdown是一个文本到HTML的解释器,它能把易读易写的md文本格式转化成HTML格式。Markdown的文本格式看起来和简单的文本邮件很像,它支持一些像headers,emphasis,code blocks,blockquotes,linkds等的属性。

    这个模块提供给你什么

    模块提供的功能主要包括以下三点:

  • 首先,对java进行了扩展 ${str.markdown().raw()}。
  • 其次,提供一个基本的控制器能快速解析你的markdown内容。
  • 然后不是最后,一个强大的开发者接口支持流和markdown文档树。
  • 为什么markdown模块比其它的要好

    这个模块基于出色的markdownPapers,它在速度(4倍于最接近的竞争者)和设计上都很出色:

    基于JavaCC,markdwon可以处理流并且构建一个markdown文档树。这个文档树可以用Visitor模式生成。用你自己的扩展来增强markdown的语法最好不过了。

    使用方法 常规

    这也许是在你的页面里添加markdwon内容的最简单的方法。你可以直接输入markdown文本或者从文件里读取:

    ${'**Hello** *world*'.markdown().raw()}
    ${'./manual.md'.markdown().raw}
    

    如果你愿意,直接使用markdownText()和markdownFile()函数吧。

    控制器

    在你的conf/route里面添加如下内容

    GET /docs/images/{imageName}\.{ext}    MarkdownController.image
    GET /docs/{page}\.md                   MarkdownController.transform
    GET /markdown/refresh                  MarkdownController.refershLangs
    

    确保markdown文件位于

    .public/moddocs/.md(文档),*.public/moddocs/images/(图片)。

    其中public/moddocs/在markdown.root 里面可以配置,图片路径在markdown.imgDir里面配置。 。

    注意你可以为markdown插件添加多语言支持,假设你的应用里面有如下配置

    application.langs=en,zh
    

    你可以把markdown文件放到public/mddocs/en和public/mddocs/zh,这分别代表英文和中文版本,markdown还支持在markdwon.defLang里面配置默认语言,如果你指定的语言没有文档,那么它就会使用默认的语言。如果没有找到默认语言的文件夹,那么一个“no-lang”的版本就会被导入。

    PS:你可以扩展控制器,实现一个更适合你的外观的action。

    API

    组件类markdown.Markdown提供两种生成方式:

    public static String transformMarkdown(String markdown) throws java.text.ParseException;
    public static String transformMarkdown(Reader markdownReader) throws java.teext.ParseException;
    

    如果你想自己处理markdwon文档树,使用下面的包

    org.tautua.markdownpapers.Markdown
    
    Reader in = new FileReader("in.md");
    Visitor v = new HtmlEmitter();
    Parser parser = new Parser(in);
    
    Document doc = parser.parse();
    doc.accept(v);
    
    配置 配置 描述 默认值 markdown.root 配置markdwon文件的根路径 /public/mddocs markdown.imgDir
        
    最新技术文章:
    ▪主-主数据库系统架构    ▪java.lang.UnsupportedClassVersionError: Bad version number i...    ▪eclipse项目出现红色叉叉解决方案
    ▪Play!framework 项目部署到Tomcat    ▪dedecms如何做中英文网站?    ▪Spring Batch Framework– introduction chapter(上)
    ▪第三章 AOP 基于@AspectJ的AOP    ▪基于插件的服务集成方式    ▪Online Coding开发模式 (通过在线配置实现一个表...
    ▪观察者模式(Observer)    ▪工厂模式 - 程序实现(java)    ▪几种web并行化编程实现
    ▪机器学习理论与实战(二)决策树    ▪Hibernate(四)——全面解析一对多关联映射    ▪我所理解的设计模式(C++实现)——解释器模...
    ▪利用规则引擎打造轻量级的面向服务编程模式...    ▪google blink的设计计划: Out-of-Progress iframes    ▪FS SIP呼叫的消息线程和状态机线程
    ▪XML FREESWITCH APPLICATION 实现    ▪Drupal 实战    ▪Blink: Chromium的新渲染引擎
    ▪(十四)桥接模式详解(都市异能版)    ▪你不知道的Eclipse用法:使用Allocation tracker跟...    ▪Linux内核-进程
    ▪你不知道的Eclipse用法:使用Metrics 测量复杂度    ▪IT行业为什么没有进度    ▪Exchange Server 2010/2013三种不同的故障转移
    ▪第二章 IoC Spring自动扫描和管理Bean    ▪CMMI简介    ▪目标检测(Object Detection)原理与实现(六)
    ▪值班总结(1)——探讨sql语句的执行机制    ▪第二章 IoC Annotation注入    ▪CentOS 6.4下安装Vagrant
    ▪Java NIO框架Netty1简单发送接受    ▪漫画研发之八:会吃的孩子有奶吃    ▪比较ASP和ASP.NET
    ▪SPRING中的CONTEXTLOADERLISTENER    ▪在Nginx下对网站进行密码保护    ▪Hibernate从入门到精通(五)一对一单向关联映...
    ▪.NET领域驱动设计—初尝(三:穿过迷雾走向光...    ▪linux下的块设备驱动(一)    ▪Modem项目工作总结
    ▪工作流--JBPM简介及开发环境搭建    ▪工作流--JBPM核心服务及表结构    ▪Eclipse:使用JDepend 进行依赖项检查
    ▪windows下用putty上传文件到远程Linux方法    ▪iBatis和Hibernate的5点区别    ▪基于学习的Indexing算法
    ▪设计模式11---设计模式之中介者模式(Mediator...    ▪带你走进EJB--JMS编程模型    ▪从抽象谈起(二):观察者模式与回调
    ▪设计模式09---设计模式之生成器模式(Builder)也...    ▪svn_resin_持续优化中    ▪Bitmap recycle方法与制作Bitmap的内存缓存
    ▪Hibernate从入门到精通(四)基本映射    ▪设计模式10---设计模式之原型模式(Prototype)    ▪Dreamer 3.0 支持json、xml、文件上传
    ▪Eclipse:使用PMD预先检测错误    ▪Jspx.net Framework 5.1 发布    ▪从抽象谈起(一):工厂模式与策略模式
    ▪Eclipse:使用CheckStyle实施编码标准    ▪【论文阅读】《Chain Replication for Supporting High T...    ▪Struts2 Path_路径问题
    ▪spring 配置文件详解    ▪Struts2第一个工程helloStruts极其基本配置    ▪Python学习入门基础教程(learning Python)--2 Python简...
    ▪maven springmvc环境配置    ▪基于SCRUM的金融软件开发项目    ▪software quality assurance 常见问题收录
    ▪Redis集群明细文档    ▪Dreamer 框架 比Struts2 更加灵活    ▪Maven POM入门
    ▪git 分支篇-----不断更新中    ▪Oracle非主键自增长    ▪php设计模式——UML类图
    ▪Matlab,Visio等生成的图片的字体嵌入问题解决...    ▪用Darwin和live555实现的直播框架    ▪学习ORM框架—hibernate(二):由hibernate接口谈...
    ▪(十)装饰器模式详解(与IO不解的情缘)    ▪无锁编程:最简单例子    ▪【虚拟化实战】网络设计之四Teaming
    ▪OSGi:生命周期层    ▪Javascript/Jquery——简单定时器    ▪java代码 发送GET、POST请求
    ▪Entity Framework底层操作封装(3)    ▪HttpClient 发送GET、POST请求    ▪使用spring框架,应用启动时,加载数据
    ▪Linux下Apache网站目录读写权限的设置    ▪单键模式的C++描述    ▪学习ORM框架—hibernate(一):初识hibernate
     


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3