Tauruser

JSF will hibernate in spring.

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  24 随笔 :: 2 文章 :: 19 评论 :: 0 Trackbacks

2006年11月28日 #

物料

物料用于表示成品、原料或中间产品。每个物料对应于一个最小存货单位(SKU)。例如,同一个库存中的两个不同模型的白衬衫,如果尺寸不同或款式不同,则它们为两个不同的 SKU。两个不同库存中的同一模型的衬衫也是两个不同的 SKU。因此如果您要表示不同仓库中的同一衬衫的库存,您需要创建不同的物料,并在需要时将它们分在一个物料分组中,从而便于在报告中集合结果。

资源

通常情况下,资源被用于建模机器、工具、车辆、设备或工人。不要使用资源来建模正被消耗或生产的物料;请使用物料来完成上述目的。资源可被组合成资源分组,以便更好地组织数据;例如,改进甘特图的可见性。资源分组可在主数据制表符上获得。

储存单元

储存单元用来表示物料或场所的物理储存设施。储存单元可以为单目的(可以储存一个物料),也可以为多目的(可以储存几个物料)。如果不是附属于一个一元的资源,那么储存单元只是一个带可能的最大储存能力的场所。它可用来建模一个仓库。当附属于一个一元的资源时,储存单元可以建模一个储存容器。一元的资源确保容器中各批次的顺序。生产活动可能会产出或消耗一些储存单元中的物料。物料可通过采购或需求的功能在一个特定的储存单元中获得。注意当为物料指定一个储存单元时,任何关于该物料的需求、采购或物料生产都必须指定该储存单元。注意您必须声明可储存的物料,这样该储存单元就能够储存这些物料。对多场所的问题,储存单元也可用来建模场所。可为其指定经度、纬度和类别。

配方

有关物料清单和程序安排的配方组信息配方通常建模了生产流程,并由活动原型和关联的约束所组成。每个活动是批大小为 1 的规范生产订单的原型。每个活动可能会使用一个可供选择的模式按不同的费用在可供选择的资源上执行。模式可从不同的储存单元进行生产或消耗。

单元

单元用来表示消耗或生产的物料数量的量度单位。这个编辑器允许创建和编辑一个单元,并且在适用的条件下,也允许从公制的标准单位换算成其他单位。一个度量单位没有维度或标准换算系数。例如,托盘、被子或盒子根据里面包含的物料可能有不同的换算系数。其他的度量单位有维数,因为可按照标准的方式换算成公制,如长度、表面积、体积和质量。例如,公制的吨是一个质量的维数,在公制(公斤)中来自维数的标准单元的换算系数总是1/1000,它不依赖于被量的物料。 质量的标准单位是公斤,长度的标准单位是米,表面积的标准单位是平方米,而体积的标准单位是立方米。
所有的计算都是按照物料的主单元来进行的。但是,您可以为用在图形用户界面进行显示的物料定义二级单元。在物料制表符上标记物料的主要和显示单元。请注意不同换算系数的几个物料可能会共享同一个单元。

物料分组

物料分组用于集合报告中的结果。一个物料可以为多个分组的成员。

资源分组

对一个给定的资源分组类型,资源可为该类型的一个分组的成员。资源分组用来改进数据结构或资源相关信息的可见型。

配方分组

配方分组可用来将配方组合到一起,以用于部分的加载或分解。一个配方可以为多个分组的成员。

需求

使用以要求在一个时间窗口内有一定数量的可交付物料使用以要求在一个时间窗口内有一定数量的可交付物料

采购

使用以输入从工厂外采购的物料或根据生产的日期给库存一个使用年限。

posted @ 2009-07-23 14:24 Tauruser 阅读(305) | 评论 (0)编辑 收藏

ILOG's supply chain applications provide powerful and easy-to-use supply chain planning and scheduling capabilities that are complementary to SAP and utilize ILOG's optimization, scheduling and visualization technologies.

ILOG LogicNet Plus XE

ILOG LogicNet Plus XE is a network design and planning solution that combines the advanced optimization technology of ILOG CPLEX with an easy-to-use graphical user interface to manage the world’s most complex supply chain.
ILOG LogicNet Plus XE facilitates quick analysis of the tradeoffs between production, warehousing, transportation costs, carbon footprint, and service requirements; as well as the calculation of the optimal network configuration for different cost and service objectives. A model’s solutions can be viewed, compared and easily exported to tables and graphs for presentations and further analysis.

ILOG Inventory Analyst

ILOG Inventory Analyst is a Web-based, multi-echelon inventory optimization solution that provides end-to-end functionality for manufacturers, retailers and distributors. It combines the advanced optimization technology of ILOG CPLEX with an easy-to-use graphical user interface (GUI), to manage the world’s most complex supply chains. It handles both inbound/outbound and distribution-focused business models, allowing companies to answer a broad range of business questions—from determining the right inventory policies and strategic positioning of inventory, to the ongoing setting of safety stocks and inventory levels in operational environments.

ILOG Product Flow Optimizer

ILOG Product Flow Optimizer (PFO) is a part of ILOG’s LogicTools Suite of Supply Chain Applications. It is a powerful and easy-to-use integrated stocking and distribution strategy solution for supply chain and inventory optimization. It helps facilitate both strategic and tactical planning, with built-in integration capabilities to easily connect plans to other systems. Users share a common database that fosters fast movement from one module to another.

With ILOG PFO, businesses can analyze tradeoffs between transportation, warehousing, inventory carrying costs, and service requirements to arrive at the optimal product delivery path for customers. Companies improve profitability and meet their customers' requirements. Solutions can be viewed, compared and easily exported to tables and graphs for presentations and further analysis.

ILOG Plant PowerOps

Extend the value of your existing IT investments with ILOG Plant PowerOps (PPO). ILOG Plant PowerOps takes production planning to a new level for managing demand variability and building executable schedules. It's the only application that offers integrated planning and detailed scheduling for the difficult production challenges associated with the fast-moving consumer goods, pharmaceutical and chemical industries. No other supply chain application contributes as much to the efficient management of tanks, cleaning or sterilization-in-place and process step changeover procedures.

ILOG Plant PowerOps is based on the most effective optimization models ever built for these challenges. It is the perfect extension to your enterprise resource planning (ERP) or supply chain management (SCM) system and it performs beyond the capabilities of traditional advanced planning and scheduling solutions. ILOG Plant PowerOps helps you address key issues in the food and beverage, chemical, pharmaceutical, and other consumer packaged goods (CPG) industries.

ILOG Transportation Analyst

Companies must analyze their transportation network strategies and compare multiple what-if scenarios across many dimensions. Existing transportation solutions focus on the operational and are overly complex for strategic use. Spreadsheet analysis is too limited to find the most economical solutions.

ILOG Transportation Analyst lets you quickly analyze many different strategies so you can promptly determine the best way to deliver your products and utilize your transportation assets. Manage your vehicle shipment assignments and determine your company's pickup and delivery sequencing to minimize costs while adhering to business constraints.


posted @ 2009-07-22 15:13 Tauruser 阅读(399) | 评论 (0)编辑 收藏

Through its Java, .NET, Ajax, C++, Eclipse and Adobe Flex/AIR graphics libraries and components, ILOG provides the industry’s most comprehensive set of graphics tools for creating sophisticated, interactive user displays. ILOG's graphics products enhance decision-making speed and ability by making vast quantities of complex data more comprehensible and manageable for users.
Including ILOG JViews Diagrammer, ILOG JViews Maps , ILOG JViews Gantt , ILOG JViews Charts , ILOG JViews TGO , ILOG JViews Maps for Defense , ILOG JViews Graph Layout for Eclipse, ILOG Gantt for .NET , ILOG Diagram for .NET , ILOG Views Component Suite , ILOG Server , ILOG DB Link , ILOG Elixir .
posted @ 2009-07-22 14:51 Tauruser 阅读(294) | 评论 (0)编辑 收藏

ILog Optimization Suits is Integrated Tools and Engines for Optimization Modeling and Application Development.
ILOG has long offered the world's most advanced optimization engines for solving tough business and research problems. ILOG OPL Development Studio provides the most complete integrated development environment (IDE) for developing, debugging and tuning optimization models.
With the introduction of ILOG Optimization Decision Manager (ODM), ILOG offers complete support for the optimization model-based application development process. Modelers and IT personnel can collaborate in entirely new ways to rapidly develop and deploy state-of-the-art planning and scheduling applications that take decision support to a new level.

ILOG OPL Development Studio
ILOG OPL Development Studio is a complete, integrated development environment (IDE) for building, debugging and tuning optimization models across the full range of planning and scheduling problems. ILOG OPL Development Studio supports the complete model development and deployment process and is required in order to use ILOG ODM. It is designed to take maximum advantage of ILOG CPLEX's and ILOG CP Optimizer's advanced features.

ILOG Optimization Decision Manager (ODM)
ILOG Optimization Decision Manager (ODM) is a specialized application development and deployment tool that help ILOG OPL Development Studio users build highly interactive, state-of-the-art decision support applications. Business users can participate easily in the model and application development process, ensuring the final planning or scheduling application accurately captures decision-making problems while providing excellence in scenario creation and comparison, constraint relaxation and goal balancing.


ILOG CPLEX
ILOG CPLEX delivers high-performance, robust, flexible optimizers for solving linear, mixed-integer and quadratic programming problems in mission-critical resource allocation applications.

ILOG CP Optimizer
ILOG CP Optimizer uses domain reduction and constraint propagation to efficiently solve problems that are highly combinatorial with highly logical content—problems that are usually difficult or impossible to represent with linear expressions.



posted @ 2009-07-22 14:36 Tauruser 阅读(360) | 评论 (0)编辑 收藏

Automated decisions, ranging from whether to accept a loan application or pay a health care claim, to whether a credit card transaction should be flagged as suspect or awarded loyalty points, are the lifeblood of business. But defining and changing those decisions (business rules) can be a challenge with traditional software solutions.
ILOG BRMS solutions allow your organization to make easy, safe and reliable decision changes. We give you the right tools in the right environments for every stakeholder with a role in managing automated decisions.
With a BRMS, developers and architects can extract the business logic from the traditional code of an application. When business policies are hard-coded into an enterprise application, the process of updating the system requires specialist programming staff, puts the stability of the system at risk, and can take a long time. By externalizing the business logic from a business application with business rules, IT users can develop and run the business logic independently of the application.
ILOG JRules is a Business Rule Management System (BRMS) that allows both business and IT users to manage the rules that drive business.
posted @ 2009-07-22 14:16 Tauruser 阅读(360) | 评论 (0)编辑 收藏

Activities

Defines activities in the data model.
An activity is a task to be completed. Activities are hierarchical in nature. This means that a main activity, called parent activity, can be broken down into subactivities. A subactivity, or child activity, can in turn be a parent activity of other subactivities or, if it is at the very end of a branch of the hierarchy, it is a leaf activity. A leaf activity is an activity that has no child activity.
In addition to its name and identifier, an activity is defined by its start time and end time, which determine an interval called the duration of the activity. If the start and end times are identical, the duration is equal to 0. A zero-duration activity is commonly called a milestone. Typically, milestones are not rendered by the same renderer as activities with a non-zero duration.

Resources


A resource is a means by which an activity can be completed. Resources can be persons, premises, equipment, and so forth. Like activities, resources are also hierarchical in nature.
If resources are people, the parent resource is a department while the child resources are the individual employees. Likewise, you may want to group resources by physical location or by type of machinery.

Constraints


A constraint is a type of condition set between two activities. Constraints are represented by arrowed polyline links.
Constraints can have one of the following types:
  • start to start
  • start to end
  • end to start
  • end to end

The source activity—that is, the activity whose start or end controls the start or end of another activity—is called the From activity. Conversely, the target activity—that is, the activity whose start or end depends on the start or end of another activity—is called the To activity.

Reservations

When a resource is assigned to an activity, this assignment is called a reservation. In the terminology of JViews Gantt, a reservation represents the assignment of one resource to one activity.
An activity can have multiple resources reserved and similarly, a resource can be reserved for more than one activity. The activity that reserves the resource cannot be changed after the reservation is created.

posted @ 2009-07-15 16:15 Tauruser 阅读(354) | 评论 (0)编辑 收藏

装好ILOG后,ILOG使用的是自带的JDK版本,可以按照下面的方法将ILOG升级到新的JDK版本上去。
1、安装新的JDK到机器上,设安装目录为%NEW_JDK_HOME%.
2、找到%ILOG_HOME%\ODME33\Developer\bin\x86_win32\javapath.odmcfg,将里面的内容更新为%NEW_JDK_HOME%/BIN
3、将%NEW_JDK_HOME%/jre拷贝到%ILOG_HOME%\ODME33\Developer下,当然最好先对原%ILOG_HOME%\ODME33\Developer\jre做一下备份。
4、打到Eclipse ODM Enterprise,在首选项->Java->已安装的JRE中添加我们新安装的JDK。
5、在首选项Java->编译器,将JDK的一致性级别设为1.6.

Done

posted @ 2009-07-15 10:37 Tauruser 阅读(392) | 评论 (0)编辑 收藏

<dependency>
     <groupId>org.apache.struts</groupId>
     <artifactId>struts2-rest-plugin</artifactId>
     <version>2.1.6</version>
</dependency>
posted @ 2009-02-09 19:44 Tauruser 阅读(385) | 评论 (0)编辑 收藏

在动态创建控件的时候有时候需要根据现有的控件高度去设置新控件的高度,如何动态取得已有控件的高度就是一个问题了。可以使用下面的代码进行取得控件高度。
dojo.style(dojo.byId("mapRegion"), "height")
页面上已有代码:
<div dojoType="dijit.layout.ContentPane" region="center" id="mapRegion">
</div>


posted @ 2009-02-01 21:35 Tauruser 阅读(490) | 评论 (0)编辑 收藏

下面为使用dojo动态创建Button的代码段。
function createButton(id, params){
    
var button = document.createElement("span");
    button.setAttribute(
"id", id);
    dojo.byId(
"somewherePlaceButton").appendChild(button);
                           
    
new dijit.form.Button(
        params
        ,dojo.byId(id));
}
调用例子:
createScenicSpotButton('button1',{id: "html_Button1",label: "",alt: "My button",title: "Button1",onClick: HandleFunction});


posted @ 2009-02-01 13:26 Tauruser 阅读(630) | 评论 (0)编辑 收藏

把mgscl更名为mgsclp后,文哥就跟我说项目在他的Eclipse里Run不起来了。抛出以下异常。

严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean definition with name 
'dataSource' defined in class path resource [applicationContext-resources.xml]: Circular placeholder reference 'jdbc.driverClassName' in property definitions
    at org.springframework.beans.factory.config.PropertyPlaceholderConfigurer.processProperties(PropertyPlaceholderConfigurer.java:
268)
    at org.springframework.beans.factory.config.PropertyResourceConfigurer.postProcessBeanFactory(PropertyResourceConfigurer.java:
75)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:
554)
    at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:
528)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:
363)
    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:
255)
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:
199)
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:
45)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:
3843)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:
4342)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:
1045)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:
719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:
1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:
443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:
516)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:
710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:
578)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
    at java.lang.reflect.Method.invoke(Method.java:
597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:
288)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:
413)

这个问题在之前bsdts里也遇到过,主要是因为在appfuse生成的项目里配置文件jdbc.properties里都使用了占位符 placeholder,如果项目需要正常在Eclipse的Tomcat里Run里来,这个文件的占位符应该正确的给Replace掉。出现上面的异常 主要就是占位符没有被正确的Replace掉。好了,既然原因找到了,我们下面来看下如何解决。
在Bsdts里面遇到这个问题的时候,我们经常是重新在Console下面运行mvn package 或者mvn install后,再重新Deploy就可以了。但是实践证明在mgsclp里面是行不通的。这是为什么呢?
经过查看mgsclp里的Target里的jdbc.properties文件,发现其已经给正确Replace掉了。只是没有正确地给Eclipse Deploy到tomcat里。
根据上面,我初步确定是Eclipse配置的问题。
我们现在知道的情况有哪些呢?
一是maven是会把placeholder自动replace的.这个我们可以通过查看Target/classes目录下面的jdbc.properties文件可以看到,经过maven处理后的placeholder是给正确replace了.
2.在Eclipse里面部署过后的jdbc.properties文件的plackholder没有被replace掉.

Solution:
我们的jdbc.properties文件就是位于src/main/resources目录下面的.我们可以看到Excluded里面已经有很多 properties给Excluced了.这是i18n的文件,同样也是需要maven进行编码处理的,而jdbc.properties文件是要进行 replace plackholder处理.本质上是一样的.这里把文件加进去后,eclipse也不会进行处理的.所以,我们需要把jdbc.properties文 件同样加入excluded里面.我们不需要Eclipse对这些文件进行处理.maven处理就行了.这样子,Eclipse 就不会把maven处理的结果用原来的版本覆盖了.

好,现在说回到部署问题.我们的War工程在maven里,只要把target/classes里的东西与src/webapp里面的东西放到 Tomcat就行了.这次相关的配置文件有org.eclipse.wst.common.component. Eclipse是如何知道哪些内容需要部置到Tomcat就是在这个文件里面定义的.关键的节点就是<wb-resource>.由前面所说 我们需要的内容只有两个target/classes,src/webapp.所以实际上我们只要把这两个目录上面的东西放到正确的部署位置就行了.其它 内容都是多余的.于是我只保留下面两个内容
<wb-resource deploy-path="/" source-path="src/main/webapp"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="target/classes"/>
这里的部署,只是把这里指定的目录Copy过去而已不做任务处理,(从我目前观察的情况是这样子的).
我们之前为什么不会呢,就是因为有很多个这样的节点.有些节点会引用没有处理过的文件.Eclipse再一次把没有处理过的文件盖掉处理过的文件,就出现的我们刚开始的时候的问题了.

好了,今天就到这里。

posted @ 2008-09-11 23:06 Tauruser 阅读(3058) | 评论 (0)编辑 收藏

Last night, I got the book Pragmatic Software Testing-Becoming an Effective and Efficient Test Professional from www.freebookspot.com. I am instrest in the title.
Recently, most development team try to use the agile process in the development. And most of them are test driven. I also have done many effort to the test. But I still can't do the job well. I hope this book will give me a new vision on the software testing. This page will record my reading note. As you know I can't have the book finished in a short time, so this page will keep updating. Thanks for your reading, If you have any questions and suggestions, plz give a comment.

Book Structure

The book was divide into 6 parts, as follow.

Part I - Goals, Strategies, and Tactics

Part II - Risk-Based Testing

Part III - Static Testing

Part IV - Behavioral Testing

Part V - Structural Testing

Part VI - Appendices

Reading note

Part I
Obvious Quesions will be ask, but in many time there is not obvious answer to them. What is effective software testing? What is efficient software testing? What is software testing, anyway? What is quality?
The answer is important, bacause Your answers to these questions determine what you expect to do as a tester. Other people’s answers to these questions determine what they expect you to do as a tester. Having common expectations up, down, and across the organizational chart and throughout the project team is essential to success. Without such commonality, no matter what you do, someone’s sure to be disappointed. With common expectations, you can all strive for the same goals, and support others in their endeavors.

Effective as “producing a decided, decisive, or desired result; impressive.”
Efficient as “productive of the desired effect; especially to be productive without waste.”

Should look at test effectiveness and efficiency from the project perspective, not the test subproject perspective.
posted @ 2008-09-05 11:01 Tauruser 阅读(371) | 评论 (0)编辑 收藏

昨天,IBM在南校区信科A讲学厅举行了关于这次SOA大赛的宣讲会。我们在东校区一行四人早早就出发了,在信科A会合Tomara后,到了讲学厅,这次 宣讲会到场的人并不多,佑大个讲学厅就只有大概二十多人到场,这是出乎我意料之外的。宣讲会持续了一个半小时,从19:00开始到20:30结束,这次宣 讲会总体上来,我感觉不错,让我更加了解了此次比赛的一个目的与比赛过程中要注意的地方。本来昨天晚上就想动手写这文章,由于人懒,拖到了现在。

从这次宣讲会上来看,我的理解主要有两点,一是关注的是参赛团队对所选问题领域的业务流程理解,优化;二是关注参赛团队对于IBM提供的整套工具的使用程度。下面我将分别就两方面谈一下我的想法。

一、关注参赛团队对所选问题领域的业务流程理解与优化。这一点要求团队能够对企业现有流程进行建模,发现模型在企业真正营运当中遇到的问题,何处是流程的瓶颈所在。并针对这些问题与瓶颈所在的地方进行流程重构,优化现有的流程。为了在实施前就能够知道优化后的流程是否比现有的流程真正的了改善的地方,需要对流程进行模拟。模拟之后,我们可以基于模型的一系列运行指标(KPI)来比较流程的运行情况。根据模拟的情况可以再对流程进行修改,直到得出一个比较合理的结果。

在这一部份当中,个人觉得最重要的是对业务流程的理解,找出问题所在,并能灵活的对其进行调整,以改善企业运营情况。

二、关注对IBM提供的整套工具的使用。本次比赛IBM可以说是做到了多赢。一方面提供了一个很好的机会让在校大学生参与企业的流程整合工作;一方面为企业提供了一个机会让一批有专业知识的专家与学生为他们现在流程进行义诊,提出改进方案;一方面宣传与推广了IBM这一套工具,可以说是在市场上一次很好的推广宣传。所以,在这次比赛中,一个重要的,对方案评价的标准就是对IBM工具的使用。是否对工具有一个很好的正体把握,是否充分利用的工具提供给我们的功能。宣讲当中,李师兄也特别提到了对于规则引擎的灵活运用。通过这点做到,当业务规则变化的时候,普通业务人员就可以通过规则引擎的配置做到快速应用新的规则到业务系统,灵活应对业务需求的变更。而不需要开发人员针对变更的需要重新去更改源码来适应这样的变更。

 

总的来说,此次比赛给我的感觉要特别注意这两点。对问题领域业务流程整合的深入理解,找出问题,提出优化解决方案。有了解决方案后,再使用IBM提供的参赛工具对优化方案进行实现。这个实现要求我们对工具有非常深入的了解,能够灵活应用现有功能实现开发部署。当然,我们的解决方案也要考虑除业务外的其它内容。如是否能灵活适应业务的快速变更。实施变更,是否对现有业务有影响。变更是否能够在不停止现有服务的情况下得到部署,即热部署。等等一系列,我们在下面比赛过程中要深入讨论研究的问题。

浅谈至此,希望大家指点批评。

By Tauruser 2008-5-15


posted @ 2008-05-15 10:45 Tauruser 阅读(273) | 评论 (1)编辑 收藏

今天真是一个好日子,奥运圣火在广州传递,我们Sparkle团队Blog正式开通,今天下午团队五位成员将在南校区第一次正式会面。当然恰逢奥运圣火经过南校,我们还是会去感受一下中国百年奥运梦的盛况。我们先来看一下上午奥运圣火在广州传递的情况吧。


posted @ 2008-05-07 11:43 Tauruser 阅读(251) | 评论 (2)编辑 收藏

     摘要: 在Sas IntrNet  Module很多功能都是需要用到CGI(Common Gateway Interface)进行工作。在使用CGI进行工作时候,我们首先要进行CGI服务器的配置。一般情况下可以直接使用Apache来架设CGI服务器。由于我们后期的一些应用可能是在JEE平台上进行开发,所以在一个可以运行Web Container的Server 上架设CGI服务是有必要的。本文将介绍如何在Tomcat下配置CGI服务。  阅读全文
posted @ 2007-09-06 10:40 Tauruser 阅读(7958) | 评论 (3)编辑 收藏

     摘要: 最近试着用一下了MyEclipse发现MyEclipse果然比较好用,于是想把以前在Eclipse下的项目转移到MyEclipse下继续开发。在转移的过程中出现了一些问题,解决了,写此文记之。  阅读全文
posted @ 2007-03-10 18:33 Tauruser 阅读(6425) | 评论 (7)编辑 收藏

     摘要: ENIAC simulation是什么?ENIAC是什么你不会忘记了吧,世界上的第一台数字计算机啊。去年是ENIAC诞辰60周年。为了庆祝ENIAC60周年ENIAC Museum Online特别制作了一个ENIAC的模拟器。  阅读全文
posted @ 2007-03-01 22:38 Tauruser 阅读(2083) | 评论 (0)编辑 收藏

     摘要: 自定义Hibernate的Dialect成功拿到数据库里的Decimal类型。  阅读全文
posted @ 2007-01-31 11:22 Tauruser 阅读(2811) | 评论 (1)编辑 收藏

     摘要: 从去年7月份开始参加 Sysu_SF 的培训,到如今已经有差不多半年的时间了。这半年以来,辛苦是没得说了,但同时也收获了不少。其中有专业知识上的收获,软件工程管理方面的收获,更重要的收获是结识到了许多有技术,有理想的同学,并与他们建立了深厚的友谊和合作。回首这半年时间,有许多东西可以总结,有许多东西可以说。下面就简单谈一下,我在这半年时间以来的感想。   阅读全文
posted @ 2007-01-28 10:43 Tauruser 阅读(436) | 评论 (1)编辑 收藏

     摘要: 几道有一定挑战性的Sql题目。  阅读全文
posted @ 2007-01-25 19:32 Tauruser 阅读(341) | 评论 (0)编辑 收藏

  最近去图书馆借了本《Java Web 服务编程指南》,读了第一章,写点自己的看法吧。
  在还没有接触这本书的时候,我一直的以为WS就只是网络上的web应用,这么说吧,就是我们经常上的网站。看了第一章之后,我才发现之前的直观的看法是错误的,Web Service并不只是一个网站。Web Service使我们能够对网络上的一个对象进行远程调用,也就是Remote Procedure Calls,RPC。
  我是这么理解的,一般性的网站我们也可以看成是广义上的Web Service,但是Web Service并不仅局限行一般性的网站,他更加强大的功能在于提供一个公开的,标准化的接口,让所有的客户都能通过一服务注册表,查找到此项服务,并对此项服务进行绑定。客户可以通过这个公开的,标准化的API接口,进行远程的服务调用。这些服务如,查询天气预报,查询机场服务,在一个网络商场进行下订单操作,等等。只要服务商愿意公开他的Web服务,并在服务注册表发布其服务,所有的潜在客户都可以通过在服务注册表中查找此服务,并得到关于此项服务的一些具体的描述,从而在服务商与客户之间建立bind关系,远程调用这些服务。
   在Web服务中,我们可以看到有三个不同的角色。他们之间的交互关系如下图所示。
  
  
  从这个图我们可以很清楚地看到三者之间的关系。服务提供者提供Web Service,服务消费者是使用此服务客户,而位于最顶端的服务注册表,则为两者互相寻找对方提供了一个桥梁。服务提供者在服务注册表上发布自己提供的服务,服务消费者从服务注册表上查找自己需要的服务,找到后,就可以在服务消费者和服务提供者之间进行绑定,服务消费者就可以对服务提供者提供的服务进行访问,远程调用。这里需要注意的是,服务提供者提供的服务可能是一个非常复杂的服务,他这项服务可能还会调用其它服务提供者提供的服务,他将所有的这些信息整合处理,最终为服务消费者完成此项服务。当然这项服务也可以很简单,简单到服务消费者发起一个访问,直接返回一个响应就可以了。
  三个实体之间要进行通信,为了保证这些通信都能顺利的进行,我们需要为这些通信定义规则,如果大家都遵守这些规则行事,这样我们提供的服务就可以给任何消费者使用,消费者也就可以使用任何的服务提供者的服务了。这些规则有:
  
  1. Web Service Description Language, WSDL,Web服务描述语言,用来描述Web服务。
      
  2. Universal Description, Discovery, and Integration, UDDI,通用描述,发现,集成标准。这个是用来发布和查找Web服务的标准协议。
  3. Simple Object Access Protocol,SOAP,简单对象访问协议。用于绑定到Web服务的标准应用程序协议。

  这三个协议可以简单的和上图的三个操作对应。
  最终我们得到了基本Web服务栈:
  
上面的功能都需要下面的支持。从最底层我们可以看到,Web服务不一定是建立在HTTP之上的,我们可以使用多种基于TCP/IP的应用层协议来实现我们的web service。

posted @ 2006-11-28 12:34 Tauruser 阅读(842) | 评论 (2)编辑 收藏