我只是想知道大多数人如何从Java中的文件中获取mime类型?到目前为止,我已经尝试了两个工具:JMimeMagic&Mime-Util.
第一个给了我内存异常,第二个没有正确关闭它的流.我只是想知道是否有其他人有他们使用和正常工作的方法/库?
我正在测试CouchDB以了解它如何处理记录一些搜索结果.我想做的是生成一个视图,我可以从结果中生成最顶层的查询.目前我有这样的事情:
示例文档部分
{
"query": "+dangerous +dogs",
"hits": "123"
}
Run Code Online (Sandbox Code Playgroud)
地图功能 (不完全是我需要/想要但它足以进行测试)
function(doc) {
if (doc.query) {
var split = doc.query.split(" ");
for (var i in split) {
emit(split[i], 1);
}
}
}
Run Code Online (Sandbox Code Playgroud)
减少功能
function (key, values, rereduce) {
return sum(values);
}
Run Code Online (Sandbox Code Playgroud)
现在,这将使我得到一个格式,其中查询术语是关键,右边是该术语的计数,这很好.但我希望它按价值排序,而不是钥匙.从它的声音来看,CouchDB还不能实现这一点.
那么,有没有人有任何想法,我如何获得一个视图,我有一个查询条款及其相关计数的有序版本?我对CouchDB很新,我想不出我是如何编写所需的函数的.
我一直在写一个小应用程序,让人们上传和下载文件给我.我已经为这个applciation添加了一个Web服务来提供上传/下载功能,但我不太确定我的实现将如何处理大文件.
目前,上传和下载方法的定义如下所示(使用Apache CXF编写):
boolean uploadFile(@WebParam(name = "username") String username,
@WebParam(name = "password") String password,
@WebParam(name = "filename") String filename,
@WebParam(name = "fileContents") byte[] fileContents)
throws UploadException, LoginException;
byte[] downloadFile(@WebParam(name = "username") String username,
@WebParam(name = "password") String password,
@WebParam(name = "filename") String filename) throws DownloadException,
LoginException;
Run Code Online (Sandbox Code Playgroud)
因此文件作为字节数组上传和下载.但是,如果我有一个愚蠢的大小(例如1GB)的文件肯定会尝试将所有信息放入内存并使我的服务崩溃.
所以我的问题是 - 是否有可能返回某种流?我想这不会是非常独立的操作系统.虽然我知道Web服务背后的理论,但实际的一面是我还需要了解一些信息.
为任何输入干杯,李
我正在尝试使用最新里程碑版本的Eclipse的下一个版本,我遇到了将我的Maven项目部署到Tomcat的问题.
以前在Eclipse 3.6中,我的项目在从SVN签出时自动作为Web项目启用.我已经在3.7中检查了我的项目,但没有得到任何表明它可以作为一个Web项目运行(例如,尝试运行该项目并没有给我通常的"Run on Server"选项).
我安装的是Indigo RC4"用于Java EE开发人员的Eclipse IDE"版本.然后我从这里添加了最新的M2E里程碑.这使我能够启动并运行,检查我的项目,我似乎能够很好地构建项目(这确实创建了我的.war文件进行远程部署).但仍然没有"Run On Server"选项.
有没有人能找到我可能遗失的线索?我猜这是一个Maven和WTP集成插件,但我还没有找到合适的插件.
有人可以告诉我如何在我的XSL转换中打印出变量吗?看起来似乎很容易做,但我似乎无法做到.这是我的代码:
<?xml version='1.0' encoding='UTF-8' ?>
<xsl:stylesheet version="1.0"
xmlns:fn="http://www.w3.org/2005/02/xpath-functions" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template name="ControlledListStructure">
<xsl:param name="xmlElem" />
<xsl:param name="dataName" />
<xsl:element name="{$xmlElem}">
1: <xsl:text>{$xmlElem}</xsl:text>.
2: {$xmlElem}.
</xsl:element>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
如果我使用"Wibble"(字符串 - 而不是节点)的xmlElem值调用此模板,我将得到以下输出:
<Wibble>
1: {$xmlElem}.
2: {$xmlElem}.
</Wibble>
Run Code Online (Sandbox Code Playgroud)
所以我的参数正常,我无法正常访问它.有人能告诉我如何正确打印$ xmlElem以便我看到:
<Wibble>
1: Wibble.
2: Wibble.
</Wibble>
Run Code Online (Sandbox Code Playgroud)
感谢您的任何意见.
我正在尝试使用Spring Security设置客户AuthenticationProvider,但没有太多运气让它运行起来.我正在使用Java配置,所以我可能会遗漏一些简单的东西,但由于大多数学习材料都是基于XML配置的,所以它不会向我跳出来.
这是使用Spring v4.0.1.RELEASE但使用Spring Security v3.2.2.RELEASE.版本号冲突也许?
据我所知,我所要做的就是创建我的提供者:
public class KBServicesAuthProvider implements AuthenticationProvider {
@Autowired
private ApplicationConfig applicationConfig;
@Autowired
private SessionServiceClient sessionServiceClient;
@Override
public Authentication authenticate(Authentication authentication) throws AuthenticationException {
String email = (String) authentication.getPrincipal();
String password = (String) authentication.getCredentials();
try {
KBSessionInfo sessionInfo = sessionServiceClient.login(applicationConfig.getKbServicesPresenceId(), email,
password);
List<GrantedAuthority> grantedRoles = new ArrayList<>();
for (KBRoleMembership role : sessionInfo.getAuthenticatedUser().getRoleMemberships()) {
grantedRoles.add(new SimpleGrantedAuthority(role.getRoleId()));
}
return new UsernamePasswordAuthenticationToken(email, password, grantedRoles);
} catch (InvalidSessionException e) {
throw new AuthenticationCredentialsNotFoundException("Username or password was not …Run Code Online (Sandbox Code Playgroud) 我正在尝试从我已经制作成Wordpress主题的插件中添加一些功能,但我没有什么快乐.文档并没有真正帮助我解决问题,所以也许这里的人可以提供帮助.
我在Wordpress中有一个插件,它被激活并正常工作.这个插件的类有一个名为generateHtml的函数,我想从Wordpress主题访问它.但无论我尝试什么,我似乎无法访问我的插件的代码.
可以向我总结一下我需要做些什么才能让主题从插件中访问代码和/或指出我在我的代码中出错了:
插入:
<?php
/** Usual comments here **/
if (!class_exists("ImageRotator")) {
class ImageRotator {
private $uploadPath = '';
private $pluginPath = '';
private $options;
function __construct() {
$this->uploadPath = dirname(__file__).'\\uploads\\';
// add_shortcode('imagerotator', array(&$this, 'generateHtml'));
}
// Various functions for plugin
function generateHtml() {
echo '<p>Hello World</p>';
}
}
}
/**
* Create instance of image rotator
*/
$imageRotator = new ImageRotator();
/**
* Create actions & filters for Wordpress
*/
if (isset($imageRotator)) {
// Actions
add_action('admin_menu', array(&$imageRotator, 'createMenu')); …Run Code Online (Sandbox Code Playgroud) 我的Seam代码有问题,我似乎无法弄清楚我做错了什么.它正在我的脑袋:)这是一个堆栈跟踪的摘录:
Caused by: java.lang.IllegalArgumentException: Can not set java.lang.Long field com.oobjects.sso.manager.home.PresenceHome.customerId to java.lang.String
Run Code Online (Sandbox Code Playgroud)
我正在尝试将我的URL上的参数集传递到我的一个bean中.为此,我在pages.xml中进行了以下设置:
<page view-id="/customer/presences.xhtml">
<begin-conversation flush-mode="MANUAL" join="true" />
<param name="customerId" value="#{presenceHome.customerId}" />
<raise-event type="PresenceHome.init" />
<navigation>
<rule if-outcome="persisted">
<end-conversation />
<redirect view-id="/customer/presences.xhtml" />
</rule>
</navigation>
</page>
Run Code Online (Sandbox Code Playgroud)
我的bean开头是这样的:
@Name("presenceHome")
@Scope(ScopeType.CONVERSATION)
public class PresenceHome extends EntityHome<Presence> implements Serializable {
@In
private CustomerDao customerDao;
@In(required = false)
private Long presenceId;
@In(required = false)
private Long customerId;
private Customer customer;
// Getters, setters and other methods follow. They return the correct types defined …Run Code Online (Sandbox Code Playgroud) 我正在研究的Seam应用程序遇到了一些问题,我想知道是否有人知道它的方法.我的应用程序中有一个表单,它使用AJAX显示某些输入框,具体取决于下拉框中的项目.除了在输入框中设置ID之外,代码工作正常.看起来JSF不允许我通过变量设置ID.标签中的"for"等其他属性也没问题.这里有一些代码解释了我的意思:
<ui:repeat value="#{serviceHome.instance.serviceSettings}" var="currSetting" >
<li>
<!-- Imagine the below works out as "settingABC" -->
<c:set var="labelKey" value="setting#{jsfUtils.removeWhitespace(currSetting.key.name)}" />
<!-- Labelkey is correctly added into this input so for = "settingABC" -->
<h:outputLabel for="#{labelKey}" styleClass="required generated" value="#{currSetting.key.name}:"/>
<s:decorate styleClass="errorwrapper">
<!-- Labelkey ISN'T correctly added into this input. Instead we just get "setting" -->
<h:inputText id="#{labelKey}" value="#{currSetting.value}"/>
<a4j:outputPanel ajaxRendered="true">
<h:message for="#{labelKey}" styleClass="errormessage" />
</a4j:outputPanel>
</s:decorate>
</li>
</ui:repeat>
Run Code Online (Sandbox Code Playgroud)
有谁知道我怎么能超越这个?
我有一些Google Maps/Javascript问题.我想我知道问题是什么,但只是不知道绕道而行.
我的问题的一个例子是在这里.无论你点击什么标记,第二个出现.我显然将错误的信息传递给我的事件监听器,但我似乎无法正确获取代码.这是代码的缩减部分:
首先,这是我的一部分代码:
if (GBrowserIsCompatible() && mapResults != null) {
// Read in the JSON
var mapDetailsArray = loadJSON();
// Create a map
var map = new google.maps.Map2(document.getElementById(elementId));
map.setCenter(new google.maps.LatLng(mapDetailsArray[0].getLatitude(),
mapDetailsArray[0].getLongitude()), 13);
map.addControl(new google.maps.SmallMapControl());
// Add the points and center
var mgr = new google.maps.MarkerManager(map);
var bounds = new google.maps.LatLngBounds();
for ( var i = 0; i < mapDetailsArray.length; i++) {
var mapDetails = mapDetailsArray[i];
var point = new google.maps.LatLng(mapDetails.getLatitude(), mapDetails
.getLongitude());
bounds.extend(point);
// Create our marker …Run Code Online (Sandbox Code Playgroud) java ×4
seam ×2
couchdb ×1
cxf ×1
eclipse-wtp ×1
google-maps ×1
javascript ×1
jsf ×1
maven ×1
mime ×1
plugins ×1
sorting ×1
spring ×1
themes ×1
web-services ×1
wordpress ×1
xml ×1
xslt ×1