我想使用ng-class
有条件地添加一个类accordion-heading
,但似乎甚至没有在元素上显式设置一个类被保留.我有这个:
<div accordion close-others="true">
<div ng-repeat="currItem in items" accordion-group>
<div accordion-heading class="myClass">My Heading {{$index}}</div>
<div class="accordion-inner myClass">asdf asdf asdf</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
小提琴:http://jsfiddle.net/Zmhx5/1/
当我检查手风琴标题元素时,这个类myClass
无处可寻.有什么理由我不能在手风琴标题中添加课程吗?
我创建了一个cordova插件,它有一个android实现。该 Java 代码调用了一个 SDK,该 SDK 与移动设备所连接的特定硬件进行交互。我想为我的 Java 代码编写单元测试并模拟对 SDK 的所有调用,以便我可以在 CI 期间运行测试。
在研究这个问题时,我发现了cordova-plugin-test-framework,但据我所知,这是针对 javascript 代码编写的测试,而不是实际的平台实现。我确信我可以使用它并编写一些测试,但它需要移动设备连接到硬件,并且我不想对 SDK 进行实际调用。换句话说,我没有办法使用它来模拟 SDK 调用。
我想也许我可以用我的 Java 代码从命令行运行 JUnit,但后来我收到错误,因为它找不到org.apache.cordova.CallbackContext
. 我尝试伪造自己的对象,但随着我继续,我发现了更多我的代码单独不知道的依赖项。
接下来,我认为最好在/platforms
我的 ionic 移动应用程序下的 android 项目中测试它,因为此时所有依赖项都将可见。我可以从这里运行./gradlew test
(https://developer.android.com/studio/test/command-line.html),但我不知道如何实现测试用例,以便此调用将选择它们向上。我可以添加某种配置以便它知道在哪里寻找测试吗?如果我必须把它们放在某个特定的地方,那就太好了。
我对此持开放态度。我只是希望能够运行 JUnit 测试作为我们 CI 流程的一部分。
我正在尝试将javascript单元测试添加到我们的项目中,并了解了Jasmine Maven插件.我按照指示操作,最后在我的pom.xml中输入:
<plugin>
<groupId>com.github.searls</groupId>
<artifactId>jasmine-maven-plugin</artifactId>
<version>1.2.0.0</version>
<extensions>true</extensions>
<executions>
<execution>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
<configuration>
<jsSrcDir>${project.basedir}/src/main/webapp/resources/js</jsSrcDir>
<jsTestSrcDir>${project.basedir}/src/test/javascript</jsTestSrcDir>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
我运行mvn jasmine:bdd
并获得预期的输出.然后我去了http://localhost:8234
,我得到的只是一个空白屏幕.我查看控制台,看看每个js文件:
Not allowed to load local resource: file:///absolute/path/to/the/js/src/main/webapp/resources/js/myJS.js
Run Code Online (Sandbox Code Playgroud)
该页面的HTML包含我的脚本,如下所示:
<script type="text/javascript" src="file:/absolute/path/to/the/js/src/main/webapp/resources/js/myJS.js"></script>
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,为什么插件使用文件协议来包含js?这通常是如何工作的吗?如果是这样,我如何让我的浏览器允许本地资源?有没有办法阻止它这样做?
万一重要,我尝试使用Firefox和Chrome,我使用的是OS X.
tomcat引擎中有一些我们想要访问运行时的信息,因此我们在应用程序上下文中有以下内容(从此博客文章中获取):
<bean id="tomcatEngineProxy" class="org.springframework.jmx.access.MBeanProxyFactoryBean">
<property name="objectName" value="Catalina:type=Engine" />
<property name="proxyInterface" value="org.apache.catalina.Engine" />
<property name="useStrictCasing" value="false" />
</bean>
Run Code Online (Sandbox Code Playgroud)
在控制器中,我们然后像这样自动装配它:
@Autowired
private MBeanProxyFactoryBean tomcatEngineProxy = null;
Run Code Online (Sandbox Code Playgroud)
我们无法org.apache.catalina.Engine
像在博客文章中那样接线,因为在构建时我们无法使用该类.它仅在运行时可用,并且在不同的计算机上运行所有不同的tomcat版本.
我们能够使用反射从这个@Autowire获取我们需要的信息.现在,我们希望将此功能转移到服务中.我将此添加到我们的应用上下文中:
<bean id="myService" class="com.foo.bar.MyServiceImpl">
<constructor-arg ref="tomcatEngineProxy" />
</bean>
Run Code Online (Sandbox Code Playgroud)
这堂课看起来像这样:
public class MyServiceImpl implements MyService
{
public MyServiceImpl(MBeanProxyFactoryBean tomcatEngineProxy) throws Exception
{
//stuff with the proxy
}
.....
}
Run Code Online (Sandbox Code Playgroud)
当我这样做时,我收到以下错误:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'myService' defined in ServletContext resource [/WEB-INF/spring/root-context.xml]: Unsatisfied dependency expressed through constructor argument with index 0 of …
Run Code Online (Sandbox Code Playgroud) 我是Maven的新手,所以如果这是微不足道的话,我道歉.基本上,我正在开发一个webapp,我正在使用Maven来管理项目.我<packaging>war</packaging>
在我的pom.xml中,以便在运行时mvn package
,它会吐出一个war文件以在Web服务器上部署.
现在,作为此应用程序的一部分,我们正在使用作为战争交付给我们的第三方库,它将单独部署在Web服务器上.这场战争包括我们编码的一些自定义集成功能.对于持久性逻辑,我最初只是在这个集成代码中直接编写了一个存储库.当我发现我需要更多的持久性逻辑(超过基本的SELECT)时,我发现我想要使用在我们的应用程序代码中找到的存储库和域对象.所以,理想情况下,我希望能够包装我们的核心软件包,然后在第三方战争中包含该jar,这样我就可以使用相同的功能.
我只是不知道如何设置pom.xml来告诉它我在这个jar中想要什么包(如果需要,甚至只需要1个包),以及如何创建jar本身.有没有办法从一个项目中的特定包生成一个罐子,该项目设置为将整个项目打包为战争?
我找到了有关Maven jar插件的信息,但它说,"如果项目的包装设置为'jar',那么只要它通过"包"阶段就会执行此插件." 我的项目中的包装没有设置为jar.还有一些方法可以使用这个插件吗?
通过我的javascript库,我最终得到一个表示数字的字符串.现在我想在不进行字符串连接的情况下对该数字进行预处理.解决方案很简单( 如果您的数字始终为整数,如何使用javascript(jquery)将整数值添加到返回字符串的值?如何添加而不是连接?但是我的字符串可能是浮点数或整数,并且在添加时,我不知道它将是什么.有没有办法确保添加发生,无论它是浮点数还是整数?
我有一个控制器方法,简单地将媒体(图像,css,js等)的字节流传输到客户端.我首先尝试过这样的事情:
@RequestMapping(value="/path/to/media/**", method=RequestMethod.GET)
@ResponseBody
public byte[] getMedia(HttpServletRequest request) throws IOException
{
//logic for getting path to media on server
return Files.readAllBytes(Paths.get(serverPathToMedia));
}
Run Code Online (Sandbox Code Playgroud)
我最初在Firefox中对此进行了测试,看起来一切正常.但是,我在Chrome中尝试了它,然后发现没有任何图像有效.所以,我然后把它改成这样的东西:
@RequestMapping(value="/path/to/media/**", method=RequestMethod.GET)
public ResponseEntity<byte[]> getMedia(HttpServletRequest request) throws IOException
{
//logic for getting path to media on server
byte[] bytes = Files.readAllBytes(Paths.get(serverPathToMedia));
//logic for setting some header values like Content-Type and Content-Length
return new ResponseEntity<byte[]>(bytes, headers, HttpStatus.OK);
}
Run Code Online (Sandbox Code Playgroud)
这给出了与以前相同的结果.我在开发人员工具中看到我的响应标头按预期下降,但仍然没有图像字节
接下来我尝试了这样的事情:
@RequestMapping(value="/path/to/media/**", method=RequestMethod.GET)
public void getMedia(HttpServletRequest request, HttpServletResponse response) throws IOException
{
//logic for getting path to media on …
Run Code Online (Sandbox Code Playgroud) 在设置所有路由之前,有没有办法让服务器命中检索数据$routeProvider
?我希望能够根据此远程数据动态设置路由.我试过这样的事情:
angular.module("myApp").config(["$routeProvider", "$http", function($routeProvider, $http) {
$http.get("myData").success(function(data) {
$routeProvider.when(data.dynamicRoute, {
//route definition
}
//or
$routeProvider.when("/known/route", {
redirectTo: data.dynamicRoute
}
});
}]);
Run Code Online (Sandbox Code Playgroud)
但这会导致以下错误:
Unknown provider: $http from myApp
Run Code Online (Sandbox Code Playgroud)
所以,我知道配置功能是注入提供者而不是服务.但是,我仍然想知道我是否可以某种方式实现我的最终目标?我不认为我可以这样做$httpProvider
,但如果我错了,请有人纠正我.如果有一些根本原因导致这种情况无法实现,请解释一下.任何有关这方面的帮助将非常感激.
Spring Data JPA 根据接口方法的命名约定构造了许多查询。是否有任何命名约定来执行“MEMBER OF”查询?
我可以获得以下内容来使用 JPQL:
@Query("select e from MyEntity e where ?1 member of e.entities")
Run Code Online (Sandbox Code Playgroud)
但是,如果可能的话,我想使用名称约定方法。我在文档中找不到任何有关它的内容,所以我希望我只是错过了一些东西。如果有一些根本原因无法解决此问题,我也很想知道。
说我有两个指令,my-awesome-table
和my-awesome-table-cell
.我从不想my-awesome-table-cell
在my-awesome-table
指令之外使用.有没有办法强制执行此操作?因此在my-awesome-table
指令外使用时会抛出错误?
java ×4
angularjs ×3
javascript ×2
accordion ×1
addition ×1
android ×1
angular-ui ×1
controller ×1
cordova ×1
jar ×1
jasmine ×1
jpql ×1
junit ×1
maven ×1
numbers ×1
proxy ×1
spring ×1
spring-mvc ×1
string ×1
unit-testing ×1