标签: versioning

如何使用JSF 2 h实现"CSS版本化"(解决缓存问题):outputStylesheet?

我开始使用JSF 2,所以我想试试h:outputStylesheet.它运行正常,但后来我尝试应用"模式"或将查询字符串添加到请求的技巧,该请求随文件版本而变化,以强制浏览器获取更改.

这里使用的东西.

不幸的是我无法做到这一点.实际上,当使用该标记时,它不会生成一个简单的URL,而是一个已经有查询字符串的计算URL.我已经在规范和这里找到了有关JSF 2中资源版本化的一些信息,但它似乎指的是资源的多个版本,这不是我需要的.

当然,我总是可以回去不使用新标签.但我想在此分享一下以供讨论.

更新1 - 一些例子:

我试过的是这样的:

<h:outputStylesheet library="css" name="estilo.css?v=1" target="head"/>
Run Code Online (Sandbox Code Playgroud)

其呈现为:

<link type="text/css" rel="stylesheet" href="RES_NOT_FOUND" />
Run Code Online (Sandbox Code Playgroud)

相当具有描述性.;-)

我试图得到的是这样的:

<link rel="stylesheet" type="text/css" href="../css/estilo.css?v=1"/>
Run Code Online (Sandbox Code Playgroud)

其中,使用JSP,我曾经这样说过:

<link rel="stylesheet" type="text/css"
 href="<c:url value='/css/estilo.css?v=${initParam.version}'/>"/>
Run Code Online (Sandbox Code Playgroud)

css java versioning java-ee-6 jsf-2

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

REST API版本控制 - 为什么版本不是模型

我一直在阅读REST API版本的所有方法.在几乎所有实现中,控制器和视图都是版本化的,但模型不是.

为了给出rails示例,控制器组织为:

# app/controllers/api/v1/events_controller.rb
class Api::V1::EventsController < Api::ApiController

end
Run Code Online (Sandbox Code Playgroud)

相应的视图也放在不同版本的目录中.为什么我们没有版型号?是因为我们希望我们的模型(底层数据库模式)不随着API的发展而改变吗?当我在数据库中重命名列名并需要新模型来解释时会发生什么?

versioning rest ruby-on-rails semantic-versioning rails-api

9
推荐指数
2
解决办法
1858
查看次数

如何知道哪个用户回答了Jenkins-Pipeline输入步骤?

我有一个Jenkinsfile脚本,用于测试执行SVN合并的可能性,然后要求用户提交合并的权限.

我想知道回答"输入"步骤的用户名,以便将其写入提交消息.

这可能吗?

这是假设我想做的事情:

outcome = input message: 'Merge trunk into branch?', ok: 'Merge'
echo "User that allowed merge: ${outcome.user}"
Run Code Online (Sandbox Code Playgroud)

versioning jenkins jenkins-pipeline

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

平台强制版本控制机制是java最急需的功能吗?

作为开发人员,我经常对可以让您的生活更轻松的新语言功能感兴趣.例如,java 5为该语言带来了泛型和注释,这些功能绝对可以提高您的工作效率.

然而,当我回顾近十年来在java平台上工作时,我发现与版本相关的问题是非生产性和不必要的努力的最大罪魁祸首.寻找正确版本的jar的小时和小时,试图协调一些版本冲突,升级依赖库等.当我开始使用java时,事情并不那么困难,你有几个第三方库,就是这样.今天,您可以轻松使用典型的Web应用程序:Spring Framework,Hibernate,Struts,您可以使用它.所有这些都带有许多依赖的第三方库.今天,我的耳档将通常包括大约40个或更多第三方库.一个真正的罐子地狱!

使用注释,我不必管理Hibernate的配置文件.一个很好的功能,但我没有看到由于我将描述符保存在单独的文件中而引起的许多问题.使用泛型,我不会编写演员语句,但在我的整个编程载体中,我记不起一个可以通过使用类型安全容器来防止的错误.版本问题的解决方案不是更有价值吗?

所有这些问题导致了许多工具,如Maven,Ivy,One Jar,Jar Jar Links(不是开玩笑!),甚至恰当地命名为Jar Hell等.即使你使用其中一些工具,你也远远不能免疫问题.我使用Maven 2,这是一个很好的帮助.不过,它本身就是一个世界.新手程序员可能需要一段时间来学习它.将您的遗留项目迁移到Maven结构也很痛苦.

似乎在.Net中他们已经学会了dll地狱的教训,并且.Net程序集的管理要简单得多.

似乎有计划为java平台和OSGI等替代方案解决这个问题.我认为非常需要一些基本的和平台强制的版本控制机制

java versioning dependencies jar

8
推荐指数
2
解决办法
590
查看次数

从Visual C++资源文件获取FILEVERSION

是否有一些预处理器关键字用于在编译时访问我的.rc文件中定义的FILEVERSION?

我真的不想添加额外的代码来从编译产品本身读取文件信息.

c++ versioning visual-c++

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

如何在Appengine中保留数据存储区实体的版本历史记录

我将实体A存储在我的数据存储区中的appengine上.A的ID为Long.我想保留A字段所做的所有更改的历史记录.在实体上进行此类版本的最佳做法是什么?我更喜欢一种适用于A的子类并且尽可能自动化的解决方案.

谢谢!

database versioning google-app-engine datastore

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

如何创建自我更新的Node.js应用程序?

我想创建一个Node.js应用程序,它定期检查更新并安装它们(如果有的话).

基本组件对我来说很清楚:

  • 包含更新包的Web服务器(或FTP服务器,文件系统......)
  • 版本系统(例如SemVer),以便您可以分辨哪个包更新
  • 用于签署更新包的公钥算法

然后,可能有不同的策略来检查更新和安装更新:

  • 在申请开始
  • 在申请结束时
  • 闲着时

应用程序甚至可以很难关闭并自动重启.

但是还有一些问题:

  • 是否有可用的npm模块已经提供了这样的系统?
  • 如何在文件系统中组织不同的版本?基本上你有一个主机和多个(版本化)核心.它们应该有一个data文件夹吗?
  • 如何应对npm install&co.对于新下载的包?
  • 如何处理破碎的更新?
  • 你怎么能实现这样的东西,以便它与Heroku&co兼容.你没有永久驱动器,你可以开车到哪里?

一般来说:你会如何尝试实现这样的系统?

versioning auto-update self-updating node.js

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

NoSQL数据库(类别)支持哪些版本控制?

我认为无论NoSQL聚合存储是键值,列族还是文档数据库,它都支持值的版本控制.经过一段谷歌搜索,我得出的结论是这个假设是错误的,它只取决于DBMS的实现.这是真的?

我知道Cassandra和BigTable支持它(两个列家族商店).它看起来是Hbase(列族)和Riak(键值),但Redis和Hadoop(键值)却没有.Mongo DB(文档)确实做了 Couchbase,但是MongoDB没有(文档存储).我在这里看不到任何模式.有经验法则吗?(例如,"键值存储通常没有版本控制,而列族和文档数据库执行")

我正在尝试做什么:我想创建一个从URL到PNG图像的网站截图数据库.我宁愿使用键值存储,因为除了版本控制之外,它是满足问题的最简单的解决方案.但是当网站发生变化或被淘汰时我更新了我的数据库,我不想丢失旧图像.即使我选择了具有版本控制的键值数据库,我也希望能够切换到不同的键值数据库,而不受许多键值DB不支持版本控制的限制.因此,我试图了解聚合NoSQL数据库连续体中的复杂程度,版本控制成为数据模型隐含的功能.

versioning nosql column-family

8
推荐指数
2
解决办法
4839
查看次数

API版本控制和存储数据

在公开不同的API版本时,如何处理存储和检索可能具有不同结构的数据?

假设我们有两个API版本; V1和V2.V1和V2都在' https://api.com/message '上有一个POST端点,它将根据传递的数据在数据库中创建一条消息,如:

{
    DOB: '2014-12-01'
}
Run Code Online (Sandbox Code Playgroud)

在V1中,所需数据与V2不同,因为在V2中我们决定将DOB从格式为'YYYY-MM-DD'的字符串更改为整数时间戳,例如1284723728323

在这种情况下,当我们使用V2 API从调用中保存数据时,DOB字段将是一个整数,但是当从调用保存到V1时,它将是一个非常不同格式的字符串.

通过API的每次迭代,我们可以修改底层数据的许多方面.调用较旧的API版本将导致存储的数据对于其他版本的API不正确.

是否有一种优雅的方式来处理需要不同格式/结构数据的不同API版本?

database versioning api rest database-versioning

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

Perl6如何决定加载哪个版本的模块?

当我这样做时use Foo:ver<1.0>;,将加载模块的1.0版本Foo。但是,当我这样做时会发生什么use Foo;呢?

versioning module package perl6 api-versioning

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