Tag Info

Hot answers tagged

6

You can't. If the data is on the user's end, the user is in control of it, not you. Trying to change this is an arms race you don't want to get into. Instead, worry about what you have control of: the server. Validate data instead of blindly trusting it. HTTP may be stateless, but your app on the server-side doesn't have to be!


5

I have seen 2 main ways: Add the timestamp of the last update of the page the use is editing in a hidden input. When committing the timestamp is checked against the current one and if they don't match it has been updated by someone else and return an error. pro: multiple users can edit different parts of the page. The error page can lead to a diff page ...


3

It's just easier, and a pragmatic solution. iFrame keeps everything in it's own semi-private window, so there's little risk of CSS or JS conflicts. Not the greatest for user experience, but simple and effective especially for internal facing apps.


2

You need to "read your writes", which means before you write down a change, you need to read the record again and check if any changes where made to it since you last read it. You can do this field-by-field (fine-grained) or based on a timestamp (coarse-grained). While you do this check you need an exclusive lock on the record. If no changes were made, you ...


2

An ASP.NET WebForms application will be your best bet in the short term. Your skills at WinForms will be largely transferable, however you'll need to make yourself familiar with where you're WinForm is relying on persisted state objects. These pieces of data that need to be persisted throughout the lifetime of the application, that are not part of ...


2

We have a cluster-environment too. We use Hazelcast for such jobs. With Hazelcast you could embed the codeblock for updating within a "Hazelcast-Lock-Section". It is not my favourite solution, but this is how it is done in our application (and maybe suits hazelcast your needs). I opt for a smaller and easier solution: I would write a small (buzzword-alarm: ...


1

Using a messaging broker seems like the best tool to inform other applications that they should update rather than polling (which is fine really too). http://www.rabbitmq.com/ Locking the database table for writing is what you want to prevent race conditions.


1

Use Optimistic Concurrency Control. Add a versionNumber or versionTimestamp column to the table in question (integer is safest). User 1 reads record: {id:1, status:unimportant, version:5} User 2 reads record: {id:1, status:unimportant, version:5} User 1 saves record, this increments the version: save {id:1, status:important, version:5} new value ...


1

I'd store the data server side in a session object or user profile record and then send the unmodified data each time.


1

There are many different technologies for a touch screen. For some of them, the answer would likely lean more to 'yes'. A resistive screen, for example, would detect a multitude of locations being pressed simultaneously. On the other hand, a projected capacitive may not. I'm fairly sure that a surface acoustic wave would have difficulty trying to detect a ...


1

... is it possible to implement a front end using common languages like html, css and javascript and then do server side processing using a language of your choice, say python or java? Yes, it is possible. It is standard, in fact. But I'm not sure how you would combine technologies of your choice. When an HTTP request is received by your web ...


1

Yes, you can. If the your data operations are about a set of data specific for a client, they should be done on the client. They are not "data operations" as usually meant. Work on data obtained belong not to data server, but to application server. And the last can easily be done more thin making clients a bit thicker. It is not against some common ...



Only top voted, non community-wiki answers of a minimum length are eligible