美好的一天!我正在使用Delphi 2009和MSXML2_TLB库(IXMLDOM).我需要选择最后一个Meeting节点:
Doc := CreateOleObject('Microsoft.XMLDOM') as IXMLDomDocument;
Doc.loadXML(XmlStr);
tmpNode:= Doc.selectSingleNode('//Meeting[last()]');
Run Code Online (Sandbox Code Playgroud)
但是在上面代码的最后一行我得到了异常:
Project test.exe raised exception class EOleException with message: 'Unknown method
//Meeting[-->last()<--]'
Run Code Online (Sandbox Code Playgroud)
有没有办法如何使用xpath选择最后一个节点,还是我真的必须编写代码来获取节点列表然后选择最后一个元素?
然而版本信息:
Type Lib: C:\WINDOWS\system32\msxml6.dll (1)
LIBID: {F5078F18-C551-11D3-89B9-0000F81FE221}
HelpString: Microsoft XML, v6.0
Run Code Online (Sandbox Code Playgroud)
先感谢您!Vojtech
美好的一天,我正在学习Spring MVC,我正在按照本教程编写我的小型webapp,但我稍微将其修改为"任务列表"而不是"用户列表".有一件事我不清楚,所以我想请一个解释.这是我的edit.jsp:
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<html>
<head>
<title>Edit task</title>
</head>
<body>
<h1>Edit task</h1>
<form:form method="post" action="/update" modelAttribute="task">
<table>
<tr>
<td>Title</td>
<td><form:input path="title"/></td>
</tr>
<tr>
<td>Description</td>
<td><form:textarea path="description"/></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Save"/></td>
</tr>
</table>
</form:form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
这是我的HomePageController.java(版本1)中的方法editTask:
@RequestMapping("/edit")
public ModelAndView editTask(@RequestParam String id, @ModelAttribute Task task) {
// Retrieve task from the database
task = taskService.getTask(id);
ModelAndView model = new ModelAndView("edit");
model.addObject("task", task);
return model;
}
Run Code Online (Sandbox Code Playgroud)
如果我单击编辑链接以编辑项目(例如/ …
美好的一天.我正在学习如何编写连接到外部SOAP RCP样式的服务.我正在使用jaxws-maven-plugin插件从WSDL文件生成Java类.我正在使用Spring来创建Web服务客户端bean:
@Configuration
public class StoreServiceConfig {
@Bean
public StoreWS storeWS() throws IOException {
JaxWsPortProxyFactoryBean factoryBean = new JaxWsPortProxyFactoryBean();
factoryBean.setServiceInterface(StoreWS.class);
factoryBean.setWsdlDocumentUrl(new ClassPathResource("/wsdl/StoreWS.wsdl").getURL());
factoryBean.setNamespaceUri("urn_store");
factoryBean.setServiceName("StoreWSService");
factoryBean.setEndpointAddress("https://10.34.45.82/storeservice/services/StoreWS");
factoryBean.setUsername("testuser");
factoryBean.setPassword("testpassword");
factoryBean.afterPropertiesSet();
return (StoreWS) factoryBean.getObject();
}
}
Run Code Online (Sandbox Code Playgroud)
为了测试客户端,我使用JUnit编写了一个测试类.我用这种方式打电话给客户:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = StoreServiceTestConfig.class)
public class StoreServiceImplTest {
@Autowired
private StoreWS storeWS;
...
@Test
public void testExecuteQuery() throws Exception {
...
StoreResponseType response = storeWS.executeQuery(storeRequest);
...
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我需要测试将完整的传出和传入SOAP消息记录到控制台中.请问怎么做?越简单越好.
我找到了使用以下系统参数的建议,但它们都不适用于我:
com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.dump=true
com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump=true
com.sun.xml.ws.transport.local.LocalTransportPipe.dump=true
com.sun.xml.ws.transport.http.HttpAdapter.dump=true
Run Code Online (Sandbox Code Playgroud)
我正在使用Spring配置类(没有XML)和所有依赖项的最新版本.
我找到了这个答案,但我不知道如何在我的场景中使用它.
提前谢谢了!Vojtech
编辑: 我的logback.xml看起来像这样,但我仍然看不到控制台中的任何肥皂消息:
<?xml version="1.0" encoding="UTF-8"?> …Run Code Online (Sandbox Code Playgroud) 我使用此xpath表达式列出所有"NON TEST"项:
/Items/Item[State!='TEST']/Name
Run Code Online (Sandbox Code Playgroud)
通常输入XML看起来像这样,一切正常:
<Items>
<Item>
<Name>Item1</Name>
<State>ACTIVE</State>
</Item>
<Item>
<Name>Item2</Name>
<State>TEST</State>
</Item>
</Items>
Run Code Online (Sandbox Code Playgroud)
但是当Item miss State元素时,xpath表达式什么都不选:
<Items>
<Item>
<Name>Item1</Name>
</Item>
<Item>
<Name>Item2</Name>
</Item>
</Items>
Run Code Online (Sandbox Code Playgroud)
请问,我应该如何更改我的xpath表达式,以便在State元素不存在时它也能正常工作?如果State元素不存在,则Item被视为"NON TEST"项.我没有选择改变xml结构.
我需要在Delphi XE中开发Win32服务,我需要找到一种方法如何从同一台机器(或者如果可能的话,最终在局域网中的其他机器)控制它.通过控制它我的意思是改变它由我实现的内部参数,而不是Windows服务参数.服务本身不应与桌面交互.你能告诉我最好的方法吗?
我为Joomla 1.5创建了自定义组件和路由插件,以便为我的组件提供SEO URL,以及不与菜单绑定的文章和类别.现在我必须单独安装我的组件和路由插件.有没有办法在一个包装中安装?
先感谢您!Vojtech
我做了一个小的 webapp,我想在索引页的底部添加学分注释。从 WAR 文件的 html 页面中删除注释会很容易。所以我想我可以这样修改资源“index.html”:
public class MainPageTransformer implements ResourceTransformer {
@Override
public Resource transform(HttpServletRequest request, Resource resource, ResourceTransformerChain transformerChain) throws IOException {
String html = IOUtils.toString(resource.getInputStream(), UTF_8);
html = html.replace("</body>", "<div style=\"position: absolute; bottom: 5px;\">Autor</div>\n</body>");
return new ByteArrayResource(html.getBytes());
}
}
Run Code Online (Sandbox Code Playgroud)
... 和:
@Configuration
public class WebMvcConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/client/index.html")
.addResourceLocations("classpath:/static/client")
.resourceChain(false)
.addTransformer(new MainPageTransformer());
}
}
Run Code Online (Sandbox Code Playgroud)
MainPageTransformer.transform 方法执行后抛出异常:
java.io.FileNotFoundException: Byte array resource [resource loaded from byte array] cannot be resolved to absolute …Run Code Online (Sandbox Code Playgroud) 我使用Spring Boot版本1.5.2.RELEASE实现了oAuth2授权服务器。授权服务器支持隐式流。使用登录表单(http:// localhost:8200 / login)下面的WebSecurityConfig 可以很好地工作。
@Configuration
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private JpaUserDetailsService userDetailsService;
@Bean
@Override
public UserDetailsService userDetailsServiceBean() throws Exception {
return userDetailsService;
}
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
@Bean
public AuthenticationProvider authenticationProvider() throws Exception {
DaoAuthenticationProvider provider = new DaoAuthenticationProvider();
provider.setUserDetailsService(userDetailsServiceBean());
provider.setPasswordEncoder(passwordEncoder());
return provider;
}
@Bean
@Override
public AuthenticationManager authenticationManagerBean() throws Exception {
return new ProviderManager(singletonList(authenticationProvider()));
}
@Override
public void configure(WebSecurity web) {
web.ignoring()
.antMatchers("/")
.antMatchers("/docs/**")
.antMatchers("/swagger/**")
.antMatchers("/token/**")
.antMatchers("/v2/*") …Run Code Online (Sandbox Code Playgroud) spring-security spring-boot spring-security-oauth2 spring-oauth2
delphi ×2
spring-boot ×2
spring-mvc ×2
xpath ×2
delphi-2009 ×1
delphi-xe ×1
java ×1
java-ws ×1
jax-ws ×1
joomla ×1
joomla1.5 ×1
soap-client ×1
spring ×1
spring-ws ×1
xml ×1
xmldom ×1