我在HTML页面中有一个Java Applet.我需要让applet调用某个Javascript函数来通知HTML页面某些事件.
我目前调用JavaScript函数的方式是:
getAppletContext().showDocument(new URL("javascript:window.notifyEvent("+msisdn+")"));
Run Code Online (Sandbox Code Playgroud)
我在HTML代码中定义了实际的函数,但是当applet实际调用它时,我得到了Uncaught ReferenceError: notifyEvent is not defined错误.
我在哪里需要为applet定义javascript函数才能调用它?
谢谢!
我尝试从Tomcat中调用Web应用程序中的MBean方法.目标MBean在JBoss 4.2.3下运行.Tomcat和JBoss应用程序都使用相同类的jar相同版本,但在调用时我看到以下异常:
Caused by: java.lang.ClassNotFoundException: ...thisClass... (no security manager: RMI class loader disabled)
at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:375)
at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:165)
at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:620)
at org.jboss.system.JBossRMIClassLoader.loadClass(JBossRMIClassLoader.java:91)
at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:247)
at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:197)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at java.util.ArrayList.readObject(ArrayList.java:593)
at sun.reflect.GeneratedMethodAccessor164.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at java.util.HashMap.readObject(HashMap.java:1030)
at sun.reflect.GeneratedMethodAccessor163.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at java.rmi.MarshalledObject.get(MarshalledObject.java:142)
at …Run Code Online (Sandbox Code Playgroud) 我有一些使用JMX监视的JAVA应用程序。
我想为这些应用程序编写一个SNMP客户端,它包装了JMX接口,并通过发现公开了通过SNMP在JMX中公开的相同属性。
如果仅弄清楚如何用JAVA编写SNMP客户端,编写客户端就没有问题。我可以使用JAVA的免费SNMP库吗?是否有用于JMX的良好的免费SNMP适配器?(尝试过“ WebNMS SNMP Adapter for JMX”,但未成功)
谢谢!
应该很简单,但我找不到答案,我想将组件水平放置而不是垂直放置.
我想要实现的是一个丰富的:包含2行或更多行的工具栏.我一直试图用一个带有panelgrid和两个面板组的工具栏来做到这一点:
<rich:toolbar...>
<f:panelgrid columns="1"...>
<f:panelgroup id="row1" .../> <-- Should be horizontal placement
<f:panelgroup id="row2" .../> <-- Should be horizontal placement
<f:panelgrid/>
<rich:toolbar/>
Run Code Online (Sandbox Code Playgroud)
那么如何使面板组布局水平(或者我应该使用其他东西?)
谢谢!
我将用一个例子说明我的问题:
outerfile.xhtml:
<h:head>
<h:outputScript library="js" name="jquery-1.6.2.js" />
<h:outputScript library="js" name="outer.js" />
</h:head>
<h:body>
<h:panelGroup id="inner_panel">
<ui:include src="innerfile.xhtml" />
</h:panelGroup>
</h:body>
Run Code Online (Sandbox Code Playgroud)
innerfile.xhtml:
<ui:composition ... >
<h:head>
<h:outputScript library="js" name="jquery-1.6.2.js" />
<h:outputScript library="js" name="inner.js" />
</h:head>
<h:body>
<h:panelGroup>
I Am Text in The Inner File!
</h:panelGroup>
</h:body>
</ui:composition>
Run Code Online (Sandbox Code Playgroud)
我的问题:
js像我一样在内部文件中声明文件吗?jquery-1.6.2.js)在内部文件中再次声明common()?inner_panel使用AJAX 取消渲染和重新渲染会发生什么?是否会重新加载内部包含的标题?我不确定为什么会这样,我很乐意得到解释.
使用jquery的focus方法我绑定到窗口焦点事件.这是一个工作示例(将粘贴复制到html文件并在浏览器中打开.由于某种原因,在jsfiddle或jsbin中不起作用)
<!DOCTYPE html>
<html>
<head><script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script></head>
<body>
<p1>Here:</p1>
<div id="here" >Why</div>
</body>
<script>
$(window).load(function() {
$(window).focus(function() {console.log("focus");});
$(window).blur(function() {console.log("blur");});
});
</script>
</html>
Run Code Online (Sandbox Code Playgroud)
当浏览器重新获得焦点时,该功能运行两次,并且"焦点"将被打印到控制台两次.知道为什么会这样吗?
最终目标btw是在用户离开浏览器到应用程序或其他选项卡时停止计时器运行.
UPDATE
运行最新的(dev)版本的chrome.我会在firefox上测试一下,然后写一下它是否有所不同.
更新2 有趣的事实 - 在Firefox上不会发生.也许它是铬的一个bug.
我正在使用类的层次结构,我最好尝试做的是@ManagedBean继承一个具有@ManagedProperty成员和@PostConstruct方法的类.
具体来说,这会有用吗?:
public class A {
@ManagedProperty
private C c;
@PostConstruct
public void init() {
// Do some initialization stuff
}
public C getC() {
return c;
}
public void setC(C c) {
this.c = c;
}
}
@ManagedBean
@SessionScoped
public class B extends A {
// Content...
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我从Eclipse迁移后使用IntelliJ(使用Java)
我喜欢在右侧的代码映射中显示错误/警告,但我错过左侧问题旁边出现的错误和警告的指示(装订线)
有没有办法打开它?
谢谢!
我有这个代码(这里只有相关部分):
interface Page {
name: String;
displayName: String;
}
let pages: Page[] = [{name: 'x', displayName: 'y'}, {name: 'a', displayName: 'b'}];
let m = new Map(pages.map(page => [page.name, page.displayName]));
Run Code Online (Sandbox Code Playgroud)
我得到了这个错误(来自tslint):
Argument of type 'String[][]' is not assignable to parameter of type 'Iterable<[{},{}]>'
Run Code Online (Sandbox Code Playgroud)
这些类型定义如下:
map<U>(callbackfn: (value: T, index: number, array: T[]) => U, thisArg?: any): U[];
interface MapConstructor {
new <K, V>(): Map<K, V>;
new <K, V>(iterable: Iterable<[K, V]>): Map<K, V>;
prototype: Map<any, any>;
}
Run Code Online (Sandbox Code Playgroud)
(两种类型都来自这里)
我究竟做错了什么?
谢谢!
此函数应该是尾调用优化.
据我所知,目前的浏览器(Chrome,甚至在Canary上尝试过)都应该对它进行优化,但是这次运行会出错:
function die(x, s) {
return x === 0 ? s : die(x-1, s+1);
}
die(100000, 0);
Run Code Online (Sandbox Code Playgroud)
错误:
VM369:1 Uncaught RangeError: Maximum call stack size exceeded
或者我弄错了什么?
javascript ×4
java ×3
jmx ×2
jsf ×2
jsf-2 ×2
applet ×1
ecmascript-6 ×1
html ×1
intellij-14 ×1
jboss ×1
jquery ×1
managed-bean ×1
rmi ×1
snmp ×1
subclass ×1
typescript ×1