我正在尝试在应用程序中运行嵌入式ApacheDS。阅读http://directory.apache.org/apacheds/1.5/41-embedding-
apacheds-into-an-
application.html之后,
我将其构建为:
public void startDirectoryService() throws Exception {
service = new DefaultDirectoryService();
service.getChangeLog().setEnabled( false );
Partition apachePartition = addPartition("apache", "dc=apache,dc=org");
addIndex(apachePartition, "objectClass", "ou", "uid");
service.startup();
// Inject the apache root entry if it does not already exist
try
{
service.getAdminSession().lookup( apachePartition.getSuffixDn() );
}
catch ( LdapNameNotFoundException lnnfe )
{
LdapDN dnApache = new LdapDN( "dc=Apache,dc=Org" );
ServerEntry entryApache = service.newEntry( dnApache );
entryApache.add( "objectClass", "top", "domain", "extensibleObject" );
entryApache.add( "dc", "Apache" );
service.getAdminSession().add( entryApache );
}
}
但是运行服务器后我无法连接到服务器。默认端口是什么?还是我错过了什么?
解决方法如下:
service = new DefaultDirectoryService();
service.getChangeLog().setEnabled( false );
Partition apachePartition = addPartition("apache", "dc=apache,dc=org");
LdapServer ldapService = new LdapServer();
ldapService.setTransports(new TcpTransport(389));
ldapService.setDirectoryService(service);
service.startup();
ldapService.start();
我无法同时使用cringe,Kevin和JörgPfünder的版本。在我的JUnit测试中不断收到NPE。我已经调试了所有代码并将它们编译为一个有效的解决方案:
public class DirContextSourceAnonAuthTest {
private static DirectoryService directoryService;
private static LdapServer ldapServer;
@BeforeClass
public static void startApacheDs() throws Exception {
String buildDirectory = System.getProperty("buildDirectory");
File workingDirectory = new File(buildDirectory, "apacheds-work");
workingDirectory.mkdir();
directoryService = new DefaultDirectoryService();
directoryService.setWorkingDirectory(workingDirectory);
SchemaPartition schemaPartition = directoryService.getSchemaService()
.getSchemaPartition();
LdifPartition ldifPartition = new LdifPartition();
String workingDirectoryPath = directoryService.getWorkingDirectory()
.getPath();
ldifPartition.setWorkingDirectory(workingDirectoryPath + "/schema");
File schemaRepository = new File(workingDirectory, "schema");
SchemaLdifExtractor extractor = new DefaultSchemaLdifExtractor(
workingDirectory);
extractor.extractOrCopy(true);
schemaPartition.setWrappedPartition(ldifPartition);
SchemaLoader loader = new LdifSchemaLoader(schemaRepository);
SchemaManager schemaManager = new DefaultSchemaManager(loader);
directoryService.setSchemaManager(schemaManager);
schemaManager.loadAllEnabled();
schemaPartition.setSchemaManager(schemaManager);
List<Throwable> errors = schemaManager.getErrors();
if (!errors.isEmpty())
throw new Exception("Schema load failed : " + errors);
JdbmPartition systemPartition = new JdbmPartition();
systemPartition.setId("system");
systemPartition.setPartitionDir(new File(directoryService
.getWorkingDirectory(), "system"));
systemPartition.setSuffix(ServerDNConstants.SYSTEM_DN);
systemPartition.setSchemaManager(schemaManager);
directoryService.setSystemPartition(systemPartition);
directoryService.setShutdownHookEnabled(false);
directoryService.getChangeLog().setEnabled(false);
ldapServer = new LdapServer();
ldapServer.setTransports(new TcpTransport(11389));
ldapServer.setDirectoryService(directoryService);
directoryService.startup();
ldapServer.start();
}
@AfterClass
public static void stopApacheDs() throws Exception {
ldapServer.stop();
directoryService.shutdown();
directoryService.getWorkingDirectory().delete();
}
@Test
public void anonAuth() throws NamingException {
DirContextSource.Builder builder = new DirContextSource.Builder(
"ldap://localhost:11389");
DirContextSource contextSource = builder.build();
DirContext context = contextSource.getDirContext();
assertNotNull(context.getNameInNamespace());
context.close();
}
}
每当我想在jackson对象映射器中包装一些数据时,我会得到一个运行时错误,其中包含以下消息: 07-07 17:44:59.049 196 42-20156/com.app.teamchannel e/androidruntime:致命异常:SyncAdapterThread-1 java.lang.verifyerror:org/codehaus/jackson/map/objectmappe
问题内容: 在Elasticsearch 2.x中,我使用以下代码来启动嵌入式Node进行测试: 这不再编译。如何在5.x中启动嵌入式节点? 问题答案: 不再正式支持嵌入elasticsearch,它比2.x中的要复杂一些,但可以。 您需要添加一些依赖项: 然后启动一个这样的节点:
这是我的课本上的一个代码示例,我试图运行它,但它无法运行。这就是错误: 我不明白为什么它是错误的,因为主类在start类之外,在extenses应用程序内部。这是直接来自一本书,我只是想知道为什么它不会运行。
我正在尝试使用Android Studio3.6.3和我的手机制作一个应用程序来测试它。我遇到了一个问题,我认为卸载这个应用程序是个好主意,但现在,Android studio不知道我的手机上不存在这个应用程序,它试图运行文件。错误是: 05/27 21:03:30:在小米红米Note 7上启动“MainActivity”。 启动活动时出错 我怎样才能欺骗它重新安装正确的应用程序?
我正在构建自己的android应用程序,当我把它放在我的Nexus 5和Xperia Neo上时效果很好,但在Nexus 4或Galaxy S3上效果很慢。我不知道发生了什么。你能帮我吗?我正在使用android:minSdkVersion=“14”和android:targetSdkVersion=“17”,片段和一个抽屉布局。 包装测试。Droidlogin; 导入android.conten
我的建筑。Gradle: