小编Iva*_*tyk的帖子

在Clojure中对向量实现双循环的惯用方法是什么?

我是Clojure的新手,我很难习惯性地使用数据结构实现基本操作.

在Clojure中实现以下代码的惯用方法是什么?

l = [...]
for i in range(len(l)):
  for j in range(i + 1, len(l)):
    print l[i], l[j]
Run Code Online (Sandbox Code Playgroud)

clojure

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

"没有EntityManager的持久性提供程序"错误

我是JPA的新手,我试着从书中做一个简单的例子.但无论我做什么,我都会收到以下错误:

Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named EmployeeService
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:89)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:60)
        at com.mycompany.simpleentity.EmployeeTest.main(EmployeeTest.java:18)
Run Code Online (Sandbox Code Playgroud)

我google了很多,我做了我读到的关于JPA的所有内容.
这是我项目的目录树:

    .
|-- pom.xml
`-- src
    |-- main
    |   |-- java
    |   |   `-- com
    |   |       `-- mycompany
    |   |           `-- simpleentity
    |   |               |-- Employee.java
    |   |               |-- EmployeeService.java
    |   |               `-- EmployeeTest.java
    |   `-- resources
    |       `-- META-INF
    |           `-- persistence.xml
    `-- test
Run Code Online (Sandbox Code Playgroud)

这是我的pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany</groupId>
  <artifactId>SimpleEntity</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>SimpleEntity</name>
  <url>http://maven.apache.org</url>
  <dependencies> …
Run Code Online (Sandbox Code Playgroud)

java jpa maven

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

如何在Java中获得Unix文件权限


有没有办法读取/设置文件的Unix权限,并检查进程是否具有Java中的用户/组/其他权限?我知道这不是JNI的问题,但我需要没有JNI的跨平台解决方案.

java unix

4
推荐指数
2
解决办法
3310
查看次数

在Clojure中使用关键字作为地图中的键有什么好处?

我注意到在Clojure中,通常使用关键字作为地图中的键,而在其他没有这种概念的语言中,通常使用字符串.

使用关键字而不是字符串或其他类型有什么好处?

clojure

4
推荐指数
1
解决办法
244
查看次数

如何在运行时获取 TypeScript 枚举类型的名称?

我想以编程方式获取 TypeScript 枚举的名称。

说我有一个这样的枚举:

enum MyEnum {
  v1 = 'v1',
  v2 = 'v2',
}
Run Code Online (Sandbox Code Playgroud)

我想以编程方式获取此枚举的名称。我尝试了以下方法:

const enumType = MyEnum
console.log(enumType.constructor.name) // I expect this to return "MyEnum"
Run Code Online (Sandbox Code Playgroud)

但它显示“对象”。

有没有办法以编程方式获取 TypeScript 枚举的名称?

enums typescript

4
推荐指数
1
解决办法
657
查看次数

Amazon DAX客户端抛出"无端点可用"异常

我正在尝试使用以下代码从localhost连接到DAX:

    ClientConfig daxConfig = new ClientConfig()
            .withEndpoints("dax-cluster.yhdqu5.clustercfg.dax.use1.cache.amazonaws.com:8111");
    AmazonDaxClient client = new ClusterDaxClient(daxConfig);
Run Code Online (Sandbox Code Playgroud)

群集已启动并运行,我已在公共子网中创建它并在安全组中打开了端口8111,但尽管如此,我还是收到以下异常:

Caused by: java.io.IOException: No endpoints available
    at com.amazon.dax.client.cluster.Cluster.leaderClient(Cluster.java:560)
    at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$3.getClient(ClusterDaxClient.java:154)
    at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$RetryHandler.makeRequestWithRetries(ClusterDaxClient.java:632)
    ... 10 more
    Suppressed: java.io.IOException: No endpoints available
        ... 13 more
        Suppressed: java.io.IOException: No endpoints available
            ... 13 more
Run Code Online (Sandbox Code Playgroud)

StackOverflow上的其他答案表明这可能是由错误配置的安全组引起的,并且为了测试它我在相同的VPC /子网中启动了一个实例并使用了相同的安全组,我能够ssh到这个主机(22和安全组中打开了8111-st端口).所以应该有一些其他DAX相关的原因.

我的机器上的防火墙已关闭.

但如果我ssh到EC2中的一台机器,那么我可以连接到DAX集群:

[ec2-user@ip-10-0-0-44 ~]$ nc -z dax-cluster.yhdqu5.clustercfg.dax.use1.cache.amazonaws.com 8111
Connection to dax-cluster.yhdqu5.clustercfg.dax.use1.cache.amazonaws.com 8111 port [tcp/*] succeeded!
Run Code Online (Sandbox Code Playgroud)

amazon-dynamodb amazon-vpc amazon-dynamodb-dax

3
推荐指数
2
解决办法
1985
查看次数

Spring bean已创建但未自动装配

我试图在Spring中运行DAO类的TestNG测试.但是,尽管有注释,DataSource引用仍未自动装配.以下是测试的一部分:

@ContextConfiguration(locations={"classpath:WEB-INF/servlet-context.xml"})
public class ToDoDaoImplTest extends AbstractTestNGSpringContextTests {

    @Autowired
    // Construction of this object fails
    private ToDoItemDaoImpl toDoDao;
}
Run Code Online (Sandbox Code Playgroud)

这是我的Spring配置:

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/view/"/>
    <property name="suffix" value=".jsp"/>
</bean>

<!-- DataSource to be injected -->
<bean id="dataSource"
      class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="org.h2.Driver" />
    <property name="url" value="jdbc:h2:mem:test" />
    <property name="username" value="sa" />
    <property name="password" value="" />
</bean>

<jdbc:initialize-database data-source="dataSource" ignore-failures="DROPS">
    <jdbc:script location="classpath:db.create.sql" />
</jdbc:initialize-database>

<context:component-scan base-package="org.myapp"/>
Run Code Online (Sandbox Code Playgroud)

DAO类:

@Repository
public class ToDoItemDaoImpl implements ToDoItemDao {
    private DataSource dataSource;
    private SimpleJdbcInsert insert;

    public …
Run Code Online (Sandbox Code Playgroud)

java testng spring spring-jdbc

2
推荐指数
1
解决办法
3186
查看次数

@ConversationScope bean不保留引用值

我正在尝试实现Twitter登录过程.在登录过程中,用户需要被重定向到Twitter网站以输入他/她的凭证,然后他/她将被重定向到我的网站URL.在第一次重定向之前,应该在请求之间存储和保留RequestToken对象(Twitter4J库)的实例.

为此,我决定使用ConverstaionScoped bean,但遗憾的是,请求之间不保留引用的值.

这是我的JSF页面:

twitter.xhtml:

<html xmlns="http://www.w3.org/1999/xhtml"   
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      >

    <f:event listener="#{twitterLoginPageController.login()}" type="preRenderView" />

</html>
Run Code Online (Sandbox Code Playgroud)

twitterRedirect.xhtml:

<html xmlns="http://www.w3.org/1999/xhtml"   
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      >

    <f:event listener="#{twitterLoginPageController.onRedirect(param.oauth_token, param.oauth_verifier)}" type="preRenderView" />

</html>
Run Code Online (Sandbox Code Playgroud)

我的Twitter登录控制器:

@Named
@ConversationScoped
public class TwitterLoginPageController implements Serializable {


    @Inject
    private Conversation conversation;

    // These objects should be retained between requests
    Twitter twitter;
    RequestToken requestToken;

    public void login() {

        try {
            twitter = new TwitterFactory().getInstance();
            requestToken = twitter.getOAuthRequestToken("...");


            conversation.begin();
            conversation.setTimeout(30000);
            // Navigate to Twitter here
        } catch (TwitterException ex) {
             ...
        }

    } …
Run Code Online (Sandbox Code Playgroud)

ejb cdi twitter4j jsf-2 conversation-scope

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