我有一个AWS api代理lamba函数.我目前使用不同的端点和单独的lambda函数:
api.com/getData --> getData
api.com/addData --> addData
api.com/signUp --> signUp
Run Code Online (Sandbox Code Playgroud)
管理所有端点和功能的过程变得很麻烦.当我将一个端点用于一个lambda函数时,是否有任何缺点,该函数根据查询字符串决定做什么?
api.com/exec&func=getData --> exec --> if(params.func === 'getData') { ... }
Run Code Online (Sandbox Code Playgroud) 我正在寻找一个与Groovy的collate相当的函数,它将大型List分成批处理.我确实看到subList
哪些可以改编成类似的功能,但想检查并确保我没有错过内置或疯狂的简单替代滚动我自己.
我一直在努力让这个插件与maven-war-plugin很好地玩了几个小时,现在我觉得是时候寻求帮助了.我的插件定义如下:
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>yuicompressor-maven-plugin</artifactId>
<version>1.3.0</version>
<executions>
<execution>
<id>compressyui</id>
<phase>process-resources</phase>
<goals>
<goal>compress</goal>
</goals>
<configuration>
<nosuffix>true</nosuffix>
<warSourceDirectory>${basedir}/WebContent</warSourceDirectory>
<jswarn>false</jswarn>
</configuration>
</execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)
如果我删除nosuffix = true然后我可以看到压缩/缩小的-min.js文件按预期进入战争,但是这个标志被maven-war-plugin(我假设)覆盖了构建war文件.我真的需要文件名保持不变但是...有没有人知道我需要改变什么才能使用相同的文件名并仍然将缩小版本带入最后的战争?
是否有人知道一种方法来动态组合/缩小所有h:outputStylesheet资源,然后在渲染阶段组合/缩小所有h:outputScript资源?可能需要使用基于组合资源String的键来缓存已压缩/缩小的资源,以避免过度处理.
如果此功能不存在,我想继续处理.有没有人有关于实现这样的事情的最佳方式的想法.我认为Servlet过滤器可以正常工作,但过滤器必须做更多的工作 - 基本上检查整个渲染输出并替换匹配.在呈现阶段实现某些东西似乎会更好地工作,因为所有静态资源都可用而无需解析整个输出.
谢谢你的任何建议!
编辑: 为了表明我并不懒惰,并且会在一些指导下真正解决这个问题,这里有一个存根,它捕获脚本资源名称/库,然后从视图中删除它们.正如您所看到的,我对下一步该做什么有一些疑问......我应该发出http请求并获取要合并的资源,然后将它们组合起来并将它们保存到资源缓存中?
package com.davemaple.jsf.listener;
import java.util.ArrayList;
import java.util.List;
import javax.faces.component.UIComponent;
import javax.faces.component.UIOutput;
import javax.faces.component.UIViewRoot;
import javax.faces.context.FacesContext;
import javax.faces.event.AbortProcessingException;
import javax.faces.event.PhaseEvent;
import javax.faces.event.PhaseId;
import javax.faces.event.PhaseListener;
import javax.faces.event.PreRenderViewEvent;
import javax.faces.event.SystemEvent;
import javax.faces.event.SystemEventListener;
import org.apache.log4j.Logger;
/**
* A Listener that combines CSS/Javascript Resources
*
* @author David Maple<d@davemaple.com>
*
*/
public class ResourceComboListener implements PhaseListener, SystemEventListener {
private static final long serialVersionUID = -8430945481069344353L;
private static final Logger LOGGER = Logger.getLogger(ResourceComboListener.class);
@Override
public PhaseId getPhaseId() {
return PhaseId.RESTORE_VIEW; …
Run Code Online (Sandbox Code Playgroud) 这是我一直用于工厂的基本模式的示例,它返回一个线程安全的Singleton:
public class UserServiceFactory {
private volatile static UserService userService;
private UserServiceFactory() { }
public static UserService getInstance() {
if (userService == null) {
synchronized(UserServiceImpl.class) {
if (userService == null) {
userService = new UserServiceImpl();
}
}
}
return userService;
}
}
Run Code Online (Sandbox Code Playgroud)
它使用volatile和double check惯用法来确保创建单个实例并在线程中可见.
是否有更简洁和/或更便宜的方式来实现1.6+中的相同目标.
我喜欢jsf 2.0复合组件设置.我喜欢的另一件事是在表格上prependId ="false".是否有一个可以在cc:interface或cc:implementation中定义的等价物,它将阻止jsf创建一个j_id以预先添加到复合组件中定义的id?
我正在将一个项目移植到playframework上.以前我使用这个maven插件使用集成在构建中的htmlcompressor:http: //code.google.com/p/htmlcompressor/#Maven_Plugin
是否有人知道与sbt兼容的类似html缩小选项,我可以集成到我的Playframework构建中?
注意: 我很清楚,html缩小是最后一步优化,并不重要,应该在所有其他优化完成后应用,但这是一个已经享受html缩小的好处的项目所以我只是在探索可能性.
我正在寻找将包含html命名实体的html块转换为符合xml的块,该块使用编号的xml实体,同时保留所有html标记元素.
这是通过测试说明的基本思想:
@Test
public void testEvalHtmlEntitiesToXmlEntities() {
String input = "<a href=\"test.html\">link </a>";
String expected = "<a href=\"test.html\">link </a>";
String actual = SomeUtil.eval(input);
Assert.assertEquals(expected, actual);
}
Run Code Online (Sandbox Code Playgroud)
是否有人知道提供此功能的类?我可以编写一个正则表达式来迭代非元素匹配并执行:
xlmString += StringEscapeUtils.escapeXml(StringEscapeUtils.unescapeHtml(htmlString));
Run Code Online (Sandbox Code Playgroud)
但希望有一种更简单的方法或已经提供此类的课程.
我目前正在研究一系列警报,这些警报将检查来自外部Web服务的响应的状态,并根据响应对象的状态发送警报(例如超时,无效数据等).我希望主线程在评估响应并发送警报时继续工作.
我有两个直接的选择:
它们对我来说似乎都是不错的选择,但我倾向于使用线程命令,因为我不需要消息队列的大部分功能.
问题:您如何决定使用哪个以及为什么?
我在AWS Lambda文档上搜索但找不到我的问题的答案.
有没有办法可以从Lambda函数访问整个请求体(用node.js编写)?
该event
参数似乎只包含已解析的JSON属性.