小编Ben*_*Ben的帖子

从Java Applet调用Javascript函数

我在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函数才能调用它?

谢谢!

html javascript java applet

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

ClassNotFoundException远程JMX调用失败:...(没有安全管理器:RMI类加载器被禁用

我尝试从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)

java jboss jmx rmi

5
推荐指数
1
解决办法
5839
查看次数

Java中的SNMP,专门用作JMX适配器

我有一些使用JMX监视的JAVA应用程序。

我想为这些应用程序编写一个SNMP客户端,它包装了JMX接口,并通过发现公开了通过SNMP在JMX中公开的相同属性。

如果仅弄清楚如何用JAVA编写SNMP客户端,编写客户端就没有问题。我可以使用JAVA的免费SNMP库吗?是否有用于JMX的良好的免费SNMP适配器?(尝试过“ WebNMS SNMP Adapter for JMX”,但未成功)

谢谢!

java jmx snmp

5
推荐指数
1
解决办法
7461
查看次数

在JSF中水平放置组件

应该很简单,但我找不到答案,我想将组件水平放置而不是垂直放置.

我想要实现的是一个丰富的:包含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)

那么如何使面板组布局水平(或者我应该使用其他东西?)

谢谢!

jsf

5
推荐指数
1
解决办法
9733
查看次数

将JS文件包含在使用ui:include包含的xhtml文件中

我将用一个例子说明我的问题:

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)

我的问题:

  1. 可以js像我一样在内部文件中声明文件吗?
  2. 我是否需要(并且我应该jquery-1.6.2.js)在内部文件中再次声明common()?
  3. 如果我inner_panel使用AJAX 取消渲染和重新渲染会发生什么?是否会重新加载内部包含的标题?

javascript jsf jsf-2

5
推荐指数
1
解决办法
5479
查看次数

$(window).focus()为每个焦点运行两次

我不确定为什么会这样,我很乐意得到解释.

使用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.

javascript jquery

5
推荐指数
1
解决办法
4146
查看次数

@ManagedPropery和@PostConstruct可以放在基类中吗?

我正在使用类的层次结构,我最好尝试做的是@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)

提前致谢!

subclass postconstruct jsf-2 managed-bean managed-property

5
推荐指数
1
解决办法
2070
查看次数

IntelliJ - 在代码左侧显示错误/警告

我从Eclipse迁移后使用IntelliJ(使用Java)
我喜欢在右侧的代码映射中显示错误/警告,但我错过左侧问题旁边出现的错误和警告的指示(装订线)

有没有办法打开它?

谢谢!

intellij-idea intellij-14

5
推荐指数
1
解决办法
1047
查看次数

Typescript:无法使用映射函数返回构造新的Map()

我有这个代码(这里只有相关部分):

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)

(两种类型都来自这里)

我究竟做错了什么?
谢谢!

typescript typescript1.5

5
推荐指数
1
解决办法
1272
查看次数

为什么这个尾调用优化函数失败,最大调用堆栈大小超出错误?

此函数应该是尾调用优化.
据我所知,目前的浏览器(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 tail-recursion google-chrome ecmascript-6

5
推荐指数
1
解决办法
414
查看次数