标签: taglib

我应该在JSP中引用哪个JSTL URL?

我在尝试运行JSP时遇到以下错误.我正在使用Tomcat 6.0.18,我想使用最新版本的JSTL.

我应该使用什么版本的JSTL,哪个URL与哪个版本的JSTL一起使用?

我收到了这个错误

"根据标记文件中的TLD或属性指令,属性键不接受任何表达式"

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
Run Code Online (Sandbox Code Playgroud)

我只是说我有这个工作,但我想在jar文件中切换具有TLD文件的JSTL jar文件.(而不是必须在Web应用程序中的某处部署它们并在web.xml中定义引用).

jsp uri jstl taglib

7
推荐指数
1
解决办法
1109
查看次数

测试grails taglib

Grails 1.1.我的自定义标签:

class MyTagLib {
  static namespace 'ct'
  def textField = {attrs ->
    def bean = attrs.remove('bean')
    def field = attrs.remove('field')
    attrs.name = field
    out << render(template:"/templates/textField", model:[
        required: !bean.constraints[field].nullable,
        display : bean["${bean.trainingExperience.type}"][field],
        theTag : g.textField(name : field, value : bean[field]),
        value : bean[field]
    ])
}
Run Code Online (Sandbox Code Playgroud)

几乎所有我看到的taglib单元测试

AssertEquals "Some String", taglib.out.toString()
Run Code Online (Sandbox Code Playgroud)

是否可以测试正确的模板是否使用模型中的正确值进行渲染?

MyTagLibTests

public class CareertracTagLibTests extends TagLibUnitTestCase{
  protected void setUp() {
    super.setUp()
    mockTagLib(FormTagLib)
    mockTagLib(RenderTagLib) 
    def g = new FormTagLib() // interpret "g" namespace as instances of FormTagLib
    tagLib.metaClass.g = …
Run Code Online (Sandbox Code Playgroud)

testing grails taglib

7
推荐指数
1
解决办法
4118
查看次数

Grails:从Taglib中获取当前视图名称

有没有办法找出正在评估的当前视图(或gsp文件)?

由于URL映射和转发,RequestURI不起作用.

我正在尝试根据当前的GSP文件动态检索资源.例如,如果正在执行product/view.gsp,我想要包含product/view.css和product/view.js(如果它们存在).我遇到问题的部分是获取文本"视图"

grails view taglib gsp

7
推荐指数
1
解决办法
1869
查看次数

OSGi中的JSP:如何从bundle加载TLD?

我们正在构建一个JSP Web应用程序,它在Apache Felix OSGi容器内运行(Web应用程序本身是一个OSGi Bundle).现在,我们面临以下问题:

根据JSP 2.0规范,TLD(taglib描述符)不再需要驻留在Web应用程序WEB-INF文件夹中,而是直接从taglib的jar META-INF文件夹加载.这个taglib jar通常驻留在web应用程序WEB-INF/lib文件夹中,但因为它们是OSGi包,所以它们由Felix加载.

在taglib的OSGi信息中,我们确实导入了所有需要的包.那里的任何人都知道如何告诉servlet,在加载的OSGi Bundles中搜索TLD?

谢谢你的帮助!

java jsp osgi taglib

7
推荐指数
1
解决办法
3257
查看次数

Grails:编写一个taglib,它使用模板来呈现数据并使其与控制器无关

我编写了一个taglib,它执行一些逻辑并将一些数据编译成HTML.当我在视图中使用taglib时,taglib期望在视图的相对子文件夹中找到模板.有没有一种方法可以让taglib从公共文件夹中获取模板,例如视图中的布局/文件夹.这就是taglib代码的外观:

class IconifiedTextTagLib { 

def renderIconText = { attrs, body ->   
                 //some processing logic to generate the modelMap
         out << render(template:"taglibTemplates/iconText", model:modelMap)
    }
}
Run Code Online (Sandbox Code Playgroud)

当我<g:renderIconText />在名为A的控制器中使用标签时,它期望taglibTemplates/iconText出现在views/A /文件夹中.这是一个问题,因为我需要能够从多个控制器中使用它.我需要一种方法将模板放在像layouts /这样的文件夹中,以便可以在所有视图中使用它.有关如何做到这一点的任何想法?

grails templates views taglib

7
推荐指数
1
解决办法
4935
查看次数

如何在Thymeleaf和Spring Boot中使用自定义标记库?

我用Spring MVC,JSP和Tyles创建了一个自定义标记库,所以我有几个.tagx文件.在新项目中,我决定尝试Spring Boot和Thymelaf,但我想保留我的自定义库......

如果可以使用thymleaf创建自定义标记库,那么你呢?或者,我是否可以以任何方式导入自定义标记库?

编辑

我添加一些代码以便更清楚.以下使用的标签是我的自定义标签.所以我把JSP包含在里面xmlns:form="urn:jsptagdir:/WEB-INF/tags/form"

<form:create id="fu_utente" modelAttribute="utente" path="/utente">
    <div class="row">
        <div class="col-md-12 text-center">
            <h1 class="fa fa-user-plus" style="color:green;"><b>&#160;&#160;Stai creando un nuovo utente di tipo: <var class="varFont">&#160;${utente.ruolo}</var></b></h1>
        </div>
    </div>
    <div class="row">
        <div class="col-xs-12 col-sm-12 col-md-4 col-md-offset-2">
            <field:input field="nome" id="c_utente_nome" required="true"/>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-4">
            <field:input field="userName" id="c_utente_username" min="5" max="15" required="true"/>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-8 col-md-offset-2">
            <field:input field="email" id="c_Utente_email" required="true" validationRegex="^[a-z0-9_\+-]+(\.[a-z0-9_\+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.([a-z]{2,4})$"/>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-4 col-md-offset-2">
            <field:input field="nuovaPassword" id="c_utente_password" min="6" max="15" required="true" type="password"/>
        </div>
        <div …
Run Code Online (Sandbox Code Playgroud)

spring taglib tagx thymeleaf spring-boot

7
推荐指数
1
解决办法
1650
查看次数

是否可以在Tomcat中关闭taglib扫描?

在启动时,Tomcat递归扫描WEB-INF目录中的TLD(标记库描述符)文件.因此,如果webapp在该目录下有很多文件,则会降低启动过程的速度.有没有人知道在这种情况下是否有办法完全关闭扫描,或者至少提供一个过滤器来缩小搜索范围?

java tomcat taglib

6
推荐指数
3
解决办法
1万
查看次数

JSP Custom Taglib:嵌套评估

说我有我的自定义taglib:

<%@ taglib uri="http://foo.bar/mytaglib" prefix="mytaglib"%>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%>

<mytaglib:doSomething>
  Test
</mytaglib:doSomething>
Run Code Online (Sandbox Code Playgroud)

在taglib类中,我需要处理一个模板并告诉JSP重新评估它的输出,例如,如果我有这个:

public class MyTaglib extends SimpleTagSupport {

  @Override public void doTag() throws JspException, IOException {
    getJspContext().getOut().println("<c:out value=\"My enclosed tag\"/>");
    getJspBody().invoke(null);
  }
}
Run Code Online (Sandbox Code Playgroud)

我的输出是:

<c:out value="My enclosed tag"/>
Test
Run Code Online (Sandbox Code Playgroud)

当我真的需要输出这个:

My enclosed tag
Test
Run Code Online (Sandbox Code Playgroud)

这可行吗?怎么样?

谢谢.

java jsp taglib

6
推荐指数
1
解决办法
4125
查看次数

为Windows编译静态TagLib 1.6.3库

我在Qt项目中编译和使用TagLib 1.6.3非常困难.我已经尝试了所有我能想到的东西.TagLib声称它是通过CMake支持的,但我没有运气.此外,我对我的Qt库甚至需要什么类型的文件感到困惑!

我已经构建了*.a文件,*.lib和*.dll.从我到目前为止的理解...我相信,因为我在Windows*.lib工作是我想要的.无论我做什么,我总是在我尝试编译我的Qt项目时尝试使用的任何TagLib函数的"未定义引用".我已经尝试过MinGW32,MSYS,Visual Studio 2008,甚至可以在Linux上对Windows进行交叉编译.一切都没事.

对我来说更不合理的是,如果我用Mac上的Qt编译相同的TagLib源代码(我认为是g ++?)它运行正常!在我的Windows编译过程中,我必须出错.我一直在我的桌子上砸我的脸大约30(开和关)小时试图解决这个问题.

由于Qt使用minGW,我必须使用相同的编译器编译TagLib吗?

如果我用Visual Studio编译*.lib是不兼容的?

*.a库甚至可以在Windows中使用吗?(假设minGW)

我仍然试图掌握这些C++的东西,但在阅读了无数的论坛帖子和其他问题之后,我仍然很短暂.以下是我目前在CMake工作的内容......

cmake -G "MinGW Makefiles" -DENABLE_STATIC=ON -DHAVE_ZLIB=0 -DWITH_MP4=1 -DMAKE_TAGLIB_LIB=1
cmake --build ./
Run Code Online (Sandbox Code Playgroud)

这会生成一个大小约为2MB的*.a文件.Mac上的工作库大约为3MB,而Visual Studio中的*.lib在发布模式下大约为4MB.请有人救我脱离这个C++跨平台命令行疯狂,因为我在我的智慧结束.我甚至可能会付钱给你一些%!$#&ing库.谢谢.

c++ windows qt cmake taglib

6
推荐指数
1
解决办法
5441
查看次数

Spring MVC和自定义标签

我想在spring-mvc应用程序中的自定义taglibs中使用spring-beans.原因TagLib-Instances不是由spring实例化的,我不能使用dependnecy-injection.

我的下一个想法是通过拦截器将spring-context添加到请求中,并从tag-class中的请求中获取它.

有没有更好的方法在taglibs中使用spring?春天有什么东西可以随时使用吗?如果spring-mvc中还没有customtag-support,是否有办法用依赖项填充现有对象?

public class MyTag extends TagSupport {
  @Autowired 
  private MyObject object;

  public void setMyObject(MyObject myObject) {
    this.myObject = myObject;
  }

  public int doEndTag() {
    ApplicationContext context = request.getAttribute("context");
    context.populate(this);

    return object.doStuff();
  }
}
Run Code Online (Sandbox Code Playgroud)

java spring-mvc taglib

6
推荐指数
1
解决办法
7240
查看次数

标签 统计

taglib ×10

java ×4

grails ×3

jsp ×3

c++ ×1

cmake ×1

gsp ×1

jstl ×1

osgi ×1

qt ×1

spring ×1

spring-boot ×1

spring-mvc ×1

tagx ×1

templates ×1

testing ×1

thymeleaf ×1

tomcat ×1

uri ×1

view ×1

views ×1

windows ×1