我正在尝试编写一个JavaScript脚本添加到greasemonkey,它在元素后添加一个按钮.onClick for this按钮应将parents元素文本复制到键盘.我已经看到很多将已经选择的文本复制到剪贴板的示例,例如:
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function copyit(theField) {
var selectedText = document.selection;
if (selectedText.type == 'Text') {
var newRange = selectedText.createRange();
theField.focus();
theField.value = newRange.text;
} else {
alert('Alert: Select The text in the textarea then click on this button');
}
}
// End -->
</script>
<input onclick="copyit(this.form.text_select)" type="button" value="Click Here to Copy the Highlighted Text" name="copy_button">
Run Code Online (Sandbox Code Playgroud)
在这里找到.
我还发现您可以在输入元素中选择文本.我尝试过将两种技术结合起来,以及其他许多技术尚未解决.我甚至不确定为什么上面的代码复制到剪贴板.有人有解决方案吗?
请考虑以下类比:如果我们有一个类:"Car",我们可能会期望它有一个"Engine"实例.如:"汽车HAS-A发动机".类似地,在"引擎"类中,我们期望"启动系统"或"冷却系统"的实例各自具有其适当的子组件.
根据封装的性质,汽车"HAS-A""散热器软管"和发动机不是真的吗?
因此,做这样的事情是否合适:
public class Car {
private Engine _engine;
public Engine getEngine() {
return _engine;
}
// is it ok to use 'convenience' methods of inner classes?
// are the following 2 methods "wrong" from an OO point of view?
public RadiatorHose getRadiatorHose() {
return getCoolingSystem().getRadiatorHose();
}
public CoolingSystem getCoolingSystem() {
return _engine.getCoolingSystem();
}
}
public class Engine {
private CoolingSystem _coolingSystem;
public CoolingSystem getCoolingSystem() {
return _coolingSystem;
}
}
public class CoolingSystem {
private RadiatorHose _radiatorHose;
public RadiatorHose …Run Code Online (Sandbox Code Playgroud) 我看到了这个:
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"/>
Run Code Online (Sandbox Code Playgroud)
在我的Eclipse .classpath文件中多次创建一个新的Maven项目时,但我似乎无法弄清楚 - 排除="**"的意思是什么?
编辑:我想我想在这里得到的是,虽然看起来像exclude ="**"应该排除src/main/resources中的所有内容,但是 - 它没有.当我创建一个测试项目并放入文件夹(例如:META-INF)时,它们实际上会显示在目标/类中.为什么?那么排除的重点是什么?
TIA
我在OPS4J上看过PAX工具,例如:这个,我想我找到了一个很好的方法:
事实证明,我错了 - 似乎PAX的东西没有这样做.(RTFM,对吧?:))
但是这让我感到疑惑:那里有什么能满足我的要求吗?
我想也许我可以通过创建一个简单的POM并使用maven-bundle-plugin来做到这一点,但这似乎对我所要求的东西来说可能有点麻烦.
注意:我得到嵌入和组装jar不是真正的"OSGi方式" - 所以我不会这样做,除非我真的认为它有用.例如 - 春天.
提前致谢.
有什么方法可以使用soap-rpc Web服务,以便通过共享接口生成客户端?宁静的Web服务以这种方式进行操作,但是基于soap的情况又如何呢?您是否总是需要使用Axis或CXF之类的工具来生成存根和代理,还是有可以动态设置的东西?
谢谢。
编辑#1:
为了澄清,我正在寻找做这样的事情:
通用接口:
@WebService
public interface MyWebService {
@WebMethod
String helloWorld();
}
Run Code Online (Sandbox Code Playgroud)
该公共接口已经可以用于创建服务器端组件。我的问题是:客户端可以使用这种类型的通用接口来生成动态代理吗?宁静的Web服务以这种方式进行操作(Restlets和CXF),并且.Net世界似乎也具有这种类型的功能。
请原谅我,如果这是重复,我似乎无法找到解释我所看到的东西的任何东西.
以下程序:
Object a = new Object();
Object b = a;
System.out.println( "a: " + a );
System.out.println( "b: " + b );
a = null;
System.out.println( "a: " + a );
System.out.println( "b: " + b );
Run Code Online (Sandbox Code Playgroud)
收益率:
a: java.lang.Object@3e25a5
b: java.lang.Object@3e25a5
a: null
b: java.lang.Object@3e25a5
Run Code Online (Sandbox Code Playgroud)
但是为什么?!?我很困惑.不应该"b"引用"a"吗?因此,如果"a"不再引用任何其他内容(例如:null),那么不应该"b"?我显然在这里缺少一些基本的东西.
提前致谢.
编辑#1
什么让我失望的是我打印出来的地址.出于某种原因,在我看来,我打印出一些指示指针\引用的神奇值 - 当实际设置b = a不是使它们相同时,它只是创建一个指向堆上相同位置的新指针.我希望这有助于其他人.
我对这里发生的事情感到困惑.我一直得到以下异常:
Caused by: java.lang.ClassNotFoundException: org.jaxen.JaxenException
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
... 51 more
Run Code Online (Sandbox Code Playgroud)
然而,这个类文件在我耳边,也在我的ejb清单和我耳朵的清单文件的'Class-Path'属性中.有没有其他地方我需要添加jaxen jar让它被耳朵里的其他jar看到?耳朵里的所有罐子都有相同的类路径吗?
编辑#1
这也有:
Caused by: java.lang.NoClassDefFoundError: org/jaxen/JaxenException
at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)
at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207)
at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:164)
Run Code Online (Sandbox Code Playgroud)
编辑#2
我正在部署到glassfish v3.1并且lib jar位于ear文件的根目录,如下所示:
-foo.ear
--\META-INF
--lib1.jar
--lib2.jar
--jaxen-1.1.1.jar
Run Code Online (Sandbox Code Playgroud)
编辑#3
我已经尝试部署到另一个版本的GF,它似乎工作,我认为它可能是我正在使用的版本中的一个错误.我在这里开了一个论坛帖子.
编辑#4
我在app服务器lib目录中有dom4j但在服务器上没有jaxen.添加jaxen lib修复此问题.
有什么方法可以在 Spring 的 bean 配置文件中引用当前应用程序上下文吗?
我正在尝试做这样的事情:
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd">
<bean id="some-bean-name" class="com.company.SomeClass">
<constructor-arg>
<!-- obviously this isn't right -->
<bean ref=#{this}/>
</constructor-arg>
</bean>
Run Code Online (Sandbox Code Playgroud)
问题是SomeClass它的构造函数中需要一个 ApplicationContext 实例。有什么方法可以获取正在加载 bean 的 ApplicationContext 的引用吗?我知道我可以在 XML 中完成所有加载,但这并不是我想要的,因为我需要在 java 代码中加载 bean。
我正在尝试根据 oozie workflow.xml 中另一个属性的存在来设置一个属性,如下所示:
<global>
<configuration>
<property>
<name>outputTableName</name>
<value>${firstNotNull(inputTableName, outputTableOverride)}</value>
</property>
</configuration>
</global>
Run Code Online (Sandbox Code Playgroud)
但是, outputTableOverride 仅在某些情况下存在。因此,它会失败,因为它有时会丢失。有没有办法检查属性是否存在?
我有一些反应代码,我试图测试,看起来像这样:
beforeEach(() => {
wrapper = mount(
<Provider store={store} >
<MyPage params={params} location={location} />
</Provider>
);
});
test('renders My Page', () => {
expect(wrapper).toMatchSnapshot();
});
Run Code Online (Sandbox Code Playgroud)
我试图从react-router传递位置,这样我就可以访问我页面中的查询参数及其组件.我有一个适用的快照(例如显示DOM等),但是一旦我添加了这个新属性wrapper返回undefined.
我调试了它,它似乎<MyPage ...>根本不再渲染.我已经尝试将<MyPage ...>调用移动到它自己的变量中,但这也没有用.最后,我也尝试将它从mount更改为浅(不确定是什么).我查看了文档,我似乎无法找到任何指示我如何告诉它为什么不渲染\ mount的东西.
是否有任何工具,技术或手段来检测挂载页面\组件无法呈现\ mount的原因?
编辑1
在一位同事的帮助下,我发现了我的问题 - 问题是我用的是PropTypes.shape代替PropTypes.shape().我可以在本地重现这个,但是没有一个在线沙箱工具似乎能够简化这一点.而且,就像它(使用无效的PropType)一样,它确实在开玩笑中无声地失败.那么,有没有一种方法可以使用标准工具和技术检测到这一点?