首先:我对zk很新.我尝试创建一个可以进行大量客户端处理的组件(想想图像编辑).因此,我想创建一个窗口小部件,在"构建时"创建自己的子窗口小部件.
但是虽然我确实找到了很多关于如何实例化小部件的文档,但我没有找到关于何时进行操作的提示.换一种说法:
ZK如何调用我的小部件,我应该在我的小部件javascript中覆盖哪些方法来生成子节点?
谁知道怎么从罐子里装Zul?我有一个包含祖尔的图书馆项目.目前我使用createComponents(String uri,Component parent,Map arg),但我不知道或不能在jar中引用uri.
我现在用:
public static Component createComponentsFromJar(final String path, final Component parent, final Map<?,?> arg) throws IOException {
final InputStream resourceAsStream = ComponentHelper.class.getClassLoader().getResourceAsStream(path);
final PageDefinition pageDefinition = Executions.getCurrent().getPageDefinitionDirectly(new InputStreamReader(resourceAsStream), "zul");
resourceAsStream.close();
return Executions.createComponents(pageDefinition, parent, arg);
}
Run Code Online (Sandbox Code Playgroud)
有没有人知道这种创建新页面的方法有什么问题?一些绑定问题还是有些问题?
我正在使用ZK,我想从js获取zk元素的id.我用过不同的方式:
声明组件像本机html,它从js获取id但它不正确.我已经使用ZK的html标签声明了元素,但也不正确.我已经看到了一些像Component.getFellow('component_name')这样的函数,最后我已经阅读了UUID并使用了一些示例代码,但我不能将元素id作为例子:
<label id=titleBook/>
Run Code Online (Sandbox Code Playgroud)
来自javaScript.
任何的想法?谢谢.
我是Zkoss的新手,我需要为我的页面创建全新的css主题.在文档中,我发现可以通过覆盖默认的z-class来完成.所以我创建了自己的类.z-datebox-inp
等等(根据styleguide)但是当我检查页面上的元素时,它们都有来自两个类的规则,Zkoss默认(来自zk.wcs)和我的自定义类(我的css文件).有时候zkoss默认类甚至会覆盖我的,所以我必须body
在我的类名之前添加选择器才能在浏览器之前创建它.有没有办法完全摆脱zkoss默认的CSS样式,还是我必须重写默认类的每一个css规则?任何帮助,将不胜感激.谢谢.
如何在zk框架中获取servletconfig对象?
因为我们可以使用nativerequest和response获取httpservletRequest和httpservletresponse,但是servletconfig呢?
我正在使用 zk 框架 6。我试图将我的 zul 页面放在 /WEB-INF/zul 目录中。我的 index.zul 文件将请求转发到 /WEB-INF/zul/login.zul,它有一个 Composer LoginComposer。但是当我在登录页面时,我想将用户重定向到另一个页面,例如 home.zul。但我收到 404 错误。
login.zul 和 home.zul 以及它们各自的作曲家都在 zul 目录中。
在 loginComposer.java 中,我有以下代码重定向到单击按钮时调用的主页。
Execution exec = Executions.getCurrent();
HttpServletResponse response = (HttpServletResponse)exec.getNativeResponse();
response.sendRedirect(response.encodeRedirectURL("/WEB-INF/zul/home.zul")); //assume there is /login
exec.setVoided(true);
Run Code Online (Sandbox Code Playgroud)
我将项目创建为 eclipse 的 zk 项目,并且没有对 web.xml 进行任何更改。
请指导我如何离开这里。
预先感谢。
网页.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>abc</display-name>
<listener>
<description>
Used to cleanup when a session is destroyed</description>
<display-name>ZK Session cleaner</display-name>
<listener-class>org.zkoss.zk.ui.http.HttpSessionListener</listener-class>
</listener>
<servlet>
<description>
The ZK …
Run Code Online (Sandbox Code Playgroud) 我的ZUL文件中有一个<template>标记,当某些情况发生时(例如,当某些LABEL的值更改为某些文本时),我想使用此模板。
请查看下面的代码...如您所见,“ templateStatus”是我标签的名称,但是没有用。
如何解决此问题?
<template name="allTaskTemplate" var="allTask" if="templateStatus.value == 'allTask'">
<row>
<label value="" />
<label value="@load(allTask.documentDTO.docTypeDTO.title)"/>
<label value="@load(allTask.documentDTO.docNumber)"/>
<label value="@load(allTask.documentDTO.docDateTime)"/>
<label value="@load(allTask.assignerID)"/>
<label value="@load(allTask.assigneeID)"/>
<label value="@load(allTask.assignDateTime)"/>
<label value="@load(allTask.assignDateTime)"/>
<label value="@load(allTask.assignDateTime)"/>
<label value="@load(allTask.assignDateTime)"/>
<label value="@load(allTask.documentDTO.docTypeStateDTO.stateActionDTO.actionDTO.title)"/>
<label value="@load(allTask.catalogDTO.catalogTypeDTO.title)"/>
</row>
</template>
</grid>
Run Code Online (Sandbox Code Playgroud) 我正在使用 ZK 在我的 Java 代码中创建 2 个ListBox
并分配这些ListBox
唯一的 Id。这是我的流程。
这是我创建列表框的方法
Listbox listbox=createListbox(widget,OrderStatus.ORDERSTATUS.class, null,orderStatus);
listbox.setId(ORDER_STATUS_ID);
Run Code Online (Sandbox Code Playgroud)
第一次一切都工作正常,但是当我下次这样做时,虽然底层代码工作正常,但我第二次收到以下错误消息,依此类推。
Not unique in the new ID space: orderStatusId
Run Code Online (Sandbox Code Playgroud)
问题与在此处输入链接描述有关,但作为 ZK 新手,不确定实现该目标的最佳方法是什么。对我来说,当我们在成功更新订单状态后刷新页面时,问题似乎出现了,因为代码正在再次执行,并且似乎已经分配给它。
button.addEventListener("onClick", new EventListener()
{
public void onEvent(Event event)
throws Exception
{
DetailsWidgetRenderer.this.handleRefreshEvent(widget, event);
}
});
Run Code Online (Sandbox Code Playgroud) 我正在与一个使用ZK框架的项目团队合作,我很乐意使用MVC,另一方面整个团队正在使用MVVM.
我想知道是否可以混合使用两种架构,这意味着一些页面使用MVC,一些页面使用MVVM.这是个坏主意吗?
我在我的网站中使用 gmaps 显示地图。
我的代码
<div class="col-md-12" >
<script type="text/javascript" content="zk.googleAPIkey='***MyKey***'" />
<gmaps id="gmaps" zoom="${initialZoom}" lat="${initialLatitude}" lng="${initialLongitude}" width="100%" height="350px" showSmallCtrl="false" >
<gmarker id="marker" content="" visible="${false}" />
</gmaps>
</div>
Run Code Online (Sandbox Code Playgroud)
在我的本地服务器中工作正常,但在我的生产服务器中https不起作用,并且出现此错误:
例外
zk.wpd:20 Mixed Content: The page at 'https://www.domain.com/' was loaded over HTTPS, but requested an insecure script 'http://www.google.com/jsapi?key=***MyKey***'. This request has been blocked; the content must be served over HTTPS.loadScript @ zk.wpd:20
Run Code Online (Sandbox Code Playgroud) zk ×10
java ×3
mvvm ×2
zul ×2
css ×1
data-binding ×1
google-maps ×1
https ×1
javascript ×1
servlets ×1
widget ×1